我正在使用ofstream在一个循环内以ios::app
模式向文件输出一些文本。但经过一些步骤后,我需要清除文件的内容。我知道我们可以通过删除文件并再次打开或使用ios::trunc
再次打开它,但是有没有我可以在没有关闭的情况下完成并再次打开文件?有没有什么办法可以在C++中动态地清除文本文件的内容?
2
A
回答
2
如果您已在ios::app
模式下打开它,则无法在不重新打开内容的情况下清除内容。 ofstream
只能将文本放入文件中,并且由于文本文件是连续的,因此无法直接删除它们上的数据。
+0
好的,谢谢你的回复。 – user1285419 2012-04-20 23:39:02
0
注意确定io流是否可行,但通常情况下,您可以通过将打开的文件的当前位置设置为0,然后在文件上设置EOF标记来截断打开的文件。例如,在Win32 API中,您可以使用SetFilePointer()
和SetEndOfFile()
来完成此操作。
相关问题
- 1. 有没有什么办法可以从doc文件获得内容php
- 2. 有什么办法可以防止在.NET中移动文件?
- 3. 有没有什么办法可以通过cs文件搜索
- 4. 有什么办法可以将写入文本文件的文本对齐吗?
- 5. 有没有什么办法可以在android中搜索PDF文件中的文本?
- 6. 有没有什么办法可以清除nodeJs命令提示符?
- 7. 有没有什么办法可以在bot框架中动态创建excel文件?
- 8. 有没有什么方法可以在html中查看文件?
- 9. 清除文本文件的内容
- 10. 有什么办法可以在Android中打开.doc文件?
- 11. 有什么办法可以在CSS文件中做“如果IE”?
- 12. 有什么办法可以在Emacs中创建“项目文件”?
- 13. 有没有什么办法可以从谷歌浏览器的html代码中打开本地文件?
- 14. 有没有办法在C++中扩展动态内存数组?
- 15. 有没有办法简化这个?从文本中删除内容,python
- 16. 有没有什么办法从文件中自动读取一行C++
- 17. 有没有什么办法可以生成DOCX文件的缩略图?
- 18. 有没有办法区分C++文件?
- 19. 在写入数据之后,有没有办法清除文件上下文?
- 20. 有没有什么方法可以在require.js中动态地设置baseurl?
- 21. 可可:有没有办法一次删除几个文件?
- 22. 有没有办法从AliasMatch中免除文件/文件夹?
- 23. 有没有什么办法可以在eclipse中编译GnuTLS?
- 24. 有没有什么办法可以在DataGrid中显示CheckBox
- 25. 有没有办法在Windows8中编辑Toast内文本的TextColor
- 26. 有什么办法可以将动画应用到TextView的文本中吗?
- 27. 有没有什么办法可以每天安排不同文本的本地通知?
- 28. 有没有办法在R中读写内存中的文件?
- 29. 有没有办法在VB6中缩放富文本框的内容?
- 30. 有没有办法在PHP中显示字段的文本内容?
你在寻求避免两行简单代码的方法吗? – ildjarn 2012-04-20 23:23:33
为什么你想写一些东西到一个文件,只是为了再次删除它,所有内部循环? – garbagecollector 2012-04-20 23:28:06
该文件用于存储用于调试的程序输出的临时状态。但是一次输出的信息太多了大约300M。我会每10个循环存储一些状态。此信息仅用于调试(直至出现某些消息)。由于整个程序循环数百万次,如果每次打开文件并再次关闭它,速度会非常慢。 – user1285419 2012-04-20 23:33:56