我用 C++写一个小程序,读写文件, 读的时候能读取汉字 但是写的时候就不能写汉字, 急急急。。 谢谢 10
环境vs2008系统是日文的(日文汉字不能写入)测试代码:(<中国>两个汉字不出)CStringtxt("wang--123--中国");CStdioFilefile;C...
环境 vs2008 系统是日文的(日文汉字不能写入)
测试代码:(<中国>两个汉字不出)
CString txt("wang -- 123 -- 中国");
CStdioFile file;
CString txt_name("c:/write.txt"):
file.Open((LPCTSTR)txt_name,CFile::modeCreate | CFile::modeWrite | CFile::modeNoTruncate);
file.SeekToEnd();
file.WriteString((LPCTSTR)txt);
file.Close(); 展开
测试代码:(<中国>两个汉字不出)
CString txt("wang -- 123 -- 中国");
CStdioFile file;
CString txt_name("c:/write.txt"):
file.Open((LPCTSTR)txt_name,CFile::modeCreate | CFile::modeWrite | CFile::modeNoTruncate);
file.SeekToEnd();
file.WriteString((LPCTSTR)txt);
file.Close(); 展开
展开全部
这是因为CString是Unicode字符,而txt是Ansi字符,把CString直接写到txt中就会出现乱码,推荐用ini文件代替txt文件,ini文件比txt文件用起来更方便,而且有专门的函数对ini文件进行操作;你也可以用MultiByteToWideChar函数对CString转换后再写到txt文件中
追问
我试过。 c:/write.txt 换成 c:/write.ini 不行。。 这个函数MultiByteToWideChar 不会用
展开全部
要注意看是否有按到其他指令 导致汉字不能写入 或者是去下中文的
更多追问追答
追问
按到其他指令.. 比如.? (字母和数字都能出,就只有汉字); 我的系统是日文的 中文的应该不行把
谢谢。。。
追答
哦 那你能读取在写程序嘛
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询