C ++:ios :: out是用新的文件替换文件还是破坏文件的内容?

时间:2012-09-03 18:13:02

标签: c++ fstream ofstream

假设我out.txt包含文字Hello World

如果我这样做

fstream ("out.txt" , ios::out)

然后,如果我尝试打开文件,它将为空。

我的问题是当我打开文件流到ios::out标志

的文件时

该文件为空是。

但它是否进入文件并删除其所有内容

还是创建了一个新的空文件并覆盖了旧文件?

3 个答案:

答案 0 :(得分:4)

我认为这取决于操作系统。

有些人会保留每个文件的版本代。在这种情况下,您每次都可能会获得一个新的。

答案 1 :(得分:3)

它的内容被删除了同一个文件。要附加到文件,您必须使用ios::app

答案 2 :(得分:2)

它应该截断文件,意味着保留相同的文件条目,并且只清除内容。