如何实现,写文件时候,要么一次写完,要么什么都不写
怎么实现,写文件时候,要么一次写完,要么什么都不写。怎么实现,写文件时候,要么一次写完,要么什么都不写。[解
怎么实现,写文件时候,要么一次写完,要么什么都不写。
怎么实现,写文件时候,要么一次写完,要么什么都不写。
[解决办法]
fflush吗
没有理解楼主意思, 类似数据库的事务吗?
如果怕多个线程同时写, 那可以加锁.
[解决办法]
可以先搞个缓存,先存起来,然后要写的时候在把缓存一次性写进去。
[解决办法]
我是建个字符串流往里面写数据,最后重定向输出到文件
[解决办法]
那为什么不加读写锁呢?
[解决办法]一个bool变量控制就可以了
[解决办法]新建一个文件,新数据写到新文件里,即可,如果写文件完成,删除旧文件,然后改名;
MFC类库里,文档视图模式,采用的是镜像文件的办法,需要时直接交换正打开的在文件,的文件名 。
可以直接查看MFC的源代码,借鉴一下。
[解决办法]如果,认为先删除会出问题,把旧文件另存为,备份文件即可。
[解决办法]在非正常写完的逻辑中清空文件就行了
[解决办法]正常的做法是,再写个标记文件,每次打开时做完整校验
[解决办法]先写个临时文件。待验证一致后。重命名。
[解决办法]
fflush吗
没有理解楼主意思, 类似数据库的事务吗?
如果怕多个线程同时写, 那可以加锁.
写文件的时候,害怕出现类似关闭对话框的事件,就是类似事务,宁可保证有文件,但是不要让数据乱
1.如果此时关闭对话框要有提示正在写文件,不能关闭对话框。
2.或者如果此时关闭对话框,不提示,但程序要等待写文件的进程结束才可以半闭对话框。
3.写文件与对话框用不同的进程,即使对话框关闭了,文件仍然可以继续写完。
[解决办法]ofstream out("out.txt");
for (int i=0;i<10;i++)
{
out<<"hello \n";
}
//out.close() 这句不写就行了