VC++中CStdioFile的Unicode问题
Posted
技术标签:
【中文标题】VC++中CStdioFile的Unicode问题【英文标题】:Unicode problem with CStdioFile in VC++ 【发布时间】:2011-01-05 09:42:52 【问题描述】:我正在尝试读取诸如 http://google.com 之类的 URL Url 被很好地打开,当我在 while(...) 循环的第一行读取时,我没有得到一些表示 html 的合理字符,而是将奇怪的汉字放入 sCurlLine 中,它是一个 CString。我想我缺少一个 unicode 编码/解码部分。 以下是读取 URL 的简单代码。 while 循环逐行读取文件,然后将文本更新到文本框中。
感谢您的帮助
void CInetSessionDlg::OnBnClickedBurl()
CStdioFile * fpUrlFile;
CString sCurlLine;
UpdateData(TRUE);
LPCTSTR url = m_sURL;
fpUrlFile = m_misSession.OpenURL(url);
if(fpUrlFile)
while(fpUrlFile->ReadString(sCurlLine))
m_sResult += sCurlLine;
UpdateData(FALSE);
【问题讨论】:
你是构建unicode还是ansi? 【参考方案1】:检查您正在构建的项目是否配置为使用正确的项目配置设置。 找到的设置:项目属性|常规|项目默认值|字符集
也许你设置错了“未设置” | “使用 Unicode”
【讨论】:
好吧,我必须设置多字节字符集。感谢您的提示!以上是关于VC++中CStdioFile的Unicode问题的主要内容,如果未能解决你的问题,请参考以下文章
CStdioFile UNICODE编译 读取中文汉字乱码 .