2011-04-16 49 views
0

我想知道是否可以刪除從main寫入文件中的值(字符串或整型)。 即刪除文本文件中的整個數據,並使其像以前一樣變空 如果是,如何?如何從C++主體中刪除文件的內容

#include <fstream> 

std::ofstream ofs("myfile.txt"); 
ofs.close(); 
+2

「讓普通像以前一樣」 - 這是什麼意思? – Mat 2011-04-16 11:04:08

+0

這意味着沒有內容,就像文件是新創建的 – 2011-04-16 11:34:05

回答

4

只是一個新的空文件覆蓋它

(截斷)任何當前內容被丟棄,假設零上的長度開幕。

例,

std::ofstream ofile("filename.txt", ios_base::trunc); 

//work with ofile 

ofile.close(); 
+0

它顯示錯誤.. – 2011-04-16 11:12:54

+1

@Frustrated:什麼錯誤?不要讓我們猜... – 2011-04-16 11:29:37

3

您可以使用ios_base::trunc用於openmode與ofstream的:

+2

+1。事實上,你可以在沒有任何東西的情況下擦除文件*:'#include ''std :: ofstream f(「name」,std :: ios :: trunc);''int main(){} ' – Potatoswatter 2011-04-16 15:32:38