编写了生成文本程序,老是出现问题,麻烦给看看!
CString PathDir;
//PathDir = m_savepath + m_filename + _T(".txt");
PathDir = _T("D:\projects\TestCase\testcase.txt");
CFile file;
if(!file.Open(PathDir,CFile::modeWrite))
{
file.Open(PathDir,CFile::modeCreate|CFile::modeWrite);
}
//file.SeekToEnd(); //指针指到文件尾
CString str= _T("\r\n////////////////////////////////////////////////////////////////////////////////");
file.Write(str,str.GetLength());
str = _T("\r\n------------------------------Endpoint Test Cases-------------------------");
file.Write(str,str.GetLength());
str = _T("\r\n////////////////////////////////////////////////////////////////////////////");
file.Write(str,str.GetLength());
file.Close();
上面这段程序运行环境是VS2010,老是在运行到 file.Write(str,str.GetLength()); 就出现错误,请帮忙看看!
[解决办法]
GetLength()获取的是字符串中的字符数
Write()的参数是字节数
在不同的编码下,一个字符未必等于一个字节