CArchive 写文件 乱码
场景:使用CArchive类写文件有乱码吗?解决办法
使用CArchive类写文件有乱码吗?
我用vs2005写的程序,作用是写文件操作。用CArchive类和CFile类一起使用的。
现在,当我用UltraEdit-32查看生成的文件时,发现每行的前面都有一个小黑点。
写文件的结构体定义如下:
struct tag{
CString str1;
CString str2;
CString str3;
CString str4;
void Serialize(CArchive &ar)//增加序列化函数
{
if(ar.IsStoring()){
ar < <str1;
ar < <str2;
ar < <str3;
ar < <str4;
}
else {
ar> > str1;
ar> > str2;
ar> > str3;
ar> > str4;
}
}
}tag1;
写文件函数有如下代码:
{
...
// tag1 初始化
CFile file(str_url,CFile::modeCreate | CFile::modeWrite |
CFile::modeNoTruncate);
file.SeekToEnd();
CArchive ar(&file,CArchive::store);
tag1.Serialize(ar);
ar.Close();
file.Close();
...
}
生成文件中
http://www.sunxin.org1
http://www.sunxin.org2
http://www.sunxin.org3
http://www.sunxin.org4
上面的 " "是什么?想去掉它怎么做?先谢谢各位了!
------解决方案--------------------
我直接这样关联的没发现问题
CFile theFile;
theFile.Open( filepathname,CFile::modeWrite|CFile::modeCreate);
CArchive ar(&theFile, CArchive::store);
//生成结点表部分
{
if(linesnum> 0)
MSaveNodeList();
}
------解决方案--------------------
虽然很讨厌你提到日文,不过还是说一下你用序列化的时候是会写入二进制信息的。
使用CArchive类写文件有乱码吗?
我用vs2005写的程序,作用是写文件操作。用CArchive类和CFile类一起使用的。
现在,当我用UltraEdit-32查看生成的文件时,发现每行的前面都有一个小黑点。
写文件的结构体定义如下:
struct tag{
CString str1;
CString str2;
CString str3;
CString str4;
void Serialize(CArchive &ar)//增加序列化函数
{
if(ar.IsStoring()){
ar < <str1;
ar < <str2;
ar < <str3;
ar < <str4;
}
else {
ar> > str1;
ar> > str2;
ar> > str3;
ar> > str4;
}
}
}tag1;
写文件函数有如下代码:
{
...
// tag1 初始化
CFile file(str_url,CFile::modeCreate | CFile::modeWrite |
CFile::modeNoTruncate);
file.SeekToEnd();
CArchive ar(&file,CArchive::store);
tag1.Serialize(ar);
ar.Close();
file.Close();
...
}
生成文件中
http://www.sunxin.org1
http://www.sunxin.org2
http://www.sunxin.org3
http://www.sunxin.org4
上面的 " "是什么?想去掉它怎么做?先谢谢各位了!
------解决方案--------------------
我直接这样关联的没发现问题
CFile theFile;
theFile.Open( filepathname,CFile::modeWrite|CFile::modeCreate);
CArchive ar(&theFile, CArchive::store);
//生成结点表部分
{
if(linesnum> 0)
MSaveNodeList();
}
------解决方案--------------------
虽然很讨厌你提到日文,不过还是说一下你用序列化的时候是会写入二进制信息的。