码迷,mamicode.com
首页 > 其他好文 > 详细

文本操作编码问题

时间:2016-03-08 17:57:25      阅读:105      评论:0      收藏:0      [点我收藏+]

标签:

在使用CFile 类写文本的时候,结果文本会出现乱码

这是因为Cfile把Unicode字符写了下来,而记事本不知道是Unicode,当作是单字节处理了

所以在写入字符串的时候,长度有就要注意了

  CString WriteTmp  = _T("");
        CTime time = CTime::GetCurrentTime();
        WriteTmp.Format(_T("\r\n%.4d-%.2d-%.2d%.2d:%.2d:%.2d\\n"),time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());
        if(FALSE == file.Open(_T(".\\Log.txt"),CFile::modeWrite))
        {
            Err = OPEN_FAILED;
            return false;
        }
        
        file.SeekToEnd();
        file.Write(WriteTmp,WriteTmp.GetLength()*sizeof(wchar_t));

CString宽字符的真实长度因该是:WriteTmp.GetLength()*sizeof(wchar_t)

文本操作编码问题

标签:

原文地址:http://www.cnblogs.com/zerolu/p/5254924.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!