文件读出的问题?

luqing88161104 2008-04-11 09:05:50
int count;
CString tempstring;
count=m_RecordList.GetCount();
for(int n=0;n<count;n++)
{
m_RecordList.GetText(n,tempstring);
MessageBox(tempstring);
fwrite(tempstring,1,sizeof(tempstring),pfile);
fputc('\n',pfile);
}
fclose(pfile);
此段代码用来将m_RecordList控件里面的内容保存在一个文件中;下面的代码用来打开保存的文件;

int ret;
int len=0;
CString filename;
CString tempstring;
CStdioFile file;
ret=m_ListHistory.GetCurSel();
m_ListHistory.GetText(ret,filename);
if(0==file.Open(filename,CFile::modeRead))
{
MessageBox("不能打开当前选择的历史记录!","错误提示",MB_OK);
}
while(file)
{

len=file.ReadString(tempstring);
if(len==0)
return;
// MessageBox(tempstring);
m_RecordList.AddString(tempstr好ing);
}

ReadString是每次读取文本一行的内容,但是每次读出的和我写进去的内容是不一制的比如在写进去的时候是2008年2月1日,但是它读出的是2008
写进去ASD ddd dddd 它就只读出ASD,后面的就没有了,不知道错在了那里,该怎么去修改呢?
...全文
24 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
菜牛 2008-04-11
写的时候为什么不也用CStdioFile呢?
回复
luqing88161104 2008-04-11
如果这一行包含了空格和中文字符的话,还能读出来吗?
回复
wflishh 2008-04-11
就是一行一行的读。不会出现这种问题。
回复
skyful123 2008-04-11
我拿你的读代码试了一下 没问题
回复
skyful123 2008-04-11
建议读文件的时候按行去读

为什么会出现这样的情况可能是遇到了中文字符和空格

读的地方修改一下
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2008-04-11 09:05
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……