关于txt写入信息后打开为0字节

johnlove9527 2014-06-03 03:28:18
RT,我新建了一个对话框,对话框中edit控件内输入数字后点击按钮写入一段数据进入txt内,但是我调试时候发现点击按钮后新建的txt为0字节。等于没写入。请教是什么原因。
代码如下:
CStdioFile file;
file.Open(pathtxt,CFile::modeCreate | CFile::modeWrite);
//存储时间文件数据
for(int i=0; i<2; i++)//num_mday
{
CString cs_temp="",cs_temp2="",cs_temp3="";
cs_temp="2014-0";
cs_temp2.Format("%d",num_stm);
cs_temp=cs_temp+cs_temp2;
cs_temp=cs_temp+"-";
cs_temp3.Format("%02d",i+1);
cs_temp=cs_temp+cs_temp3;
cs_temp=cs_temp+" 09";
file.WriteString(cs_temp);
file.WriteString("\n");
}
file.Close();
...全文
491 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
johnlove9527 2014-06-04
  • 打赏
  • 举报
回复
引用 10 楼 schlafenhamster 的回复:
搜索 pathtxt 看都 哪里 用了。
我晕死了。。。。一语道破天机。。。我在调用模态对话框框后的代码有问题。。。调用模态对话框后又新建一次文本。。。。谢谢了。。。
schlafenhamster 2014-06-04
  • 打赏
  • 举报
回复
搜索 pathtxt 看都 哪里 用了。
johnlove9527 2014-06-04
  • 打赏
  • 举报
回复
引用 8 楼 lx624909677 的回复:
你把你所有的WriteString的返回值都获取下,然后,每次写入完,都获得下当前文本内容的大小
我获取了文本大小,发现数据是写入了,然后代码执行 CDialog::OnOK(); 这句话之后文本就清空了。
lx624909677 2014-06-04
  • 打赏
  • 举报
回复
你把你所有的WriteString的返回值都获取下,然后,每次写入完,都获得下当前文本内容的大小
johnlove9527 2014-06-03
  • 打赏
  • 举报
回复

我将确定按钮代码中最后一句注释掉,发现新建的txt中数据正常,然后我点击退出按钮,再打开txt发现数据没了。。。
johnlove9527 2014-06-03
  • 打赏
  • 举报
回复
引用 5 楼 shen_wei 的回复:
自己看吧。。。
恩。我调试了,发现问题所在但是不知道怎么解决,我的按钮是对话框的确定按钮
CStdioFile file;
		if(file.Open(pathtxt,CFile::modeCreate | CFile::modeWrite))
		{
			//存储时间文件数据
			for(int i=0; i<num_mday; i++)//
			{
				CString cs_temp="";
				cs_temp.Format("2014-%02d-%02d 09",num_stm,i+1);
				file.WriteString(cs_temp);
				//file.SeekToEnd();
				file.WriteString(_T("\n"));
			}
		}
		file.Close();
	}

	//CDialog::OnOK();
我把最后一句注释掉发现文件里面有数据。但是一旦我关掉对话框txt的里面数据就没了。。。求解。
shen_wei 2014-06-03
  • 打赏
  • 举报
回复
自己看吧。。。
johnlove9527 2014-06-03
  • 打赏
  • 举报
回复
引用 2 楼 shen_wei 的回复:
		file.WriteString(cs_temp);
		file.SeekToEnd();
		file.WriteString(_T("\n"));
你这是每次都覆盖。。
不行啊,我测试了还是空的。
johnlove9527 2014-06-03
  • 打赏
  • 举报
回复
引用 2 楼 shen_wei 的回复:
		file.WriteString(cs_temp);
		file.SeekToEnd();
		file.WriteString(_T("\n"));
你这是每次都覆盖。。
我晕,指针不是自动排后的啊? 我试试。
shen_wei 2014-06-03
  • 打赏
  • 举报
回复
		file.WriteString(cs_temp);
		file.SeekToEnd();
		file.WriteString(_T("\n"));
你这是每次都覆盖。。
johnlove9527 2014-06-03
  • 打赏
  • 举报
回复
在线等啊。。。感觉代码没问题啊。

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

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

试试用AI创作助手写篇文章吧