簡體   English   中英

從txt文件讀取文本並將其放在靜態文本字段中,MFC

[英]Reading text from txt file and putting it in static text field, mfc

我從外部.txt文件中讀取了一行文本,當我嘗試通過SetWindowText使用以下命令將其放在對話框的靜態文本字段中時:

string line;

ifstream highscore ("highscore.txt");
if (highscore.is_open())
{
    getline(highscore, line);
}

staticText.SetWindowText(_T(line));

我收到以下錯誤:

錯誤:標識符“ Lline”未定義。

有什么方法可以從.txt文件中讀取字符串並將其放入靜態文本字段?

您遇到的問題是宏_T的定義如下:

#if defined(_UNICODE)
#define _T(x) L ##x
#else
#define _T(x) x
#endif

所以既然定義了_UNICODE

staticText.SetWindowText(_T(line));

正在轉換為

staticText.SetWindowText(Lline);

這為您提供了未聲明的標識符。

您可以使用VC ++中將字符串轉換為tchar的答案之一將std::string轉換為TCHAR* ,也可以使用std::wstring存儲行,並使用std::wifstream從文件中讀取。 如果執行此操作,則:

staticText.SetWindowText(_T(line));

會成為

staticText.SetWindowText(line.c_str());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM