代码如下:
CStdioFile csf;//写文件
CString m_disp;
if(csf.Open ("E://test//log.txt",/*CFile::modeCreate|CFile::modeNoTruncate|*/CFile::modeReadWrite|CFile::typeText)==NULL)
{
AfxMessageBox("建立文件失败");
return;
} csf.SeekToBegin();
csf.Read(m_disp.GetBufferSetLength(csf.GetLength()),csf.GetLength());
csf.SeekToBegin();
csf.WriteString("nnnaaa!\n");
csf.WriteString(m_disp);
csf.Close();
CStdioFile csf;//写文件
CString m_disp;
if(csf.Open ("E://test//log.txt",/*CFile::modeCreate|CFile::modeNoTruncate|*/CFile::modeReadWrite|CFile::typeText)==NULL)
{
AfxMessageBox("建立文件失败");
return;
} csf.SeekToBegin();
csf.Read(m_disp.GetBufferSetLength(csf.GetLength()),csf.GetLength());
csf.SeekToBegin();
csf.WriteString("nnnaaa!\n");
csf.WriteString(m_disp);
csf.Close();
解决方案 »
- 创建自定义消息,提示错误。
- 对话框类调用的问题(在线等)
- 关于使用CoCreateInstance函数创建一个com对象后的内存泄漏问题 请高手指点
- 求助,关于滚动条问题。
- 在线等,请问可以调用wininet.h里面什么函数实现POP3协议?
- 如何让对话框显示在桌面的右上角,并且在任何应用程序前呢?
- 震惊"sina"竟然是"支那"的意思!!!!!
- 初学VC——关于文件处理方面的问题
- link的时候提示cannot open file "mfc42u.lib"的问题。怎么解决?
- 手写体汉字弹性网格特征提取
- 用VC.NET 2003编的对话框程序为何放在Win98下会变小或变大的?
- 请问如何从CWnd中继承实现自己的按钮类
int len = csf.GetLength();
char *buf = m_disp.GetBufferSetLength(len+1);
csf.Read(buf,len);
buf[len]=NULL;//记得加上 NULL 结尾!!!
...
buf[l_len]=NULL;//记得加上 NULL 结尾!!!
...
CString msg;
msg="xxxxxxxxxxxxxxxxxxxxxxxx";
CFile file("c:\\test.txt",CFile::modeCreate|CFile::modeReadWrite);
file.Write(msg,strlen(msg));
我在末尾加了NULL了,还是不行。
csf.Read(m_disp.GetBufferSetLength(csf.GetLength()),csf.GetLength());
这里会忽略掉 0x0D的(即回车)。
如果你是设为 CFile csf;
if(csf.Open ("E://test//log.txt",/*CFile::modeCreate|CFile::modeNoTruncate|*/CFile::modeReadWrite)==NULL) //这里不要CFile::typeText
比较就知道了。
所以建议,如用CStdioFile的,就只用它的ReadString好了。
或者全改为CFile较稳健,一定可以读取全部的。