我正在做一個C編程任務,我正在使用命令行參數。其中一個筆記說,如果你使用的文件(以我的理解,它將始終是「list.csv」)還沒有被創建來創建一個。就像vim在編寫「vim new.txt」時所做的那樣,new.txt還不存在。尚未創建的文件
我只是想知道是否有一個功能,測試文件的存在?或者我使用某種try/catch塊?
我正在做一個C編程任務,我正在使用命令行參數。其中一個筆記說,如果你使用的文件(以我的理解,它將始終是「list.csv」)還沒有被創建來創建一個。就像vim在編寫「vim new.txt」時所做的那樣,new.txt還不存在。尚未創建的文件
我只是想知道是否有一個功能,測試文件的存在?或者我使用某種try/catch塊?
你可以使用fopen()。第二個參數說明,該怎麼做。讀取,創建+寫入,附加+創建(如果不存在)
一種方法是對文件名使用fstat()。
在UNIX下試試'man fstat'
通常當你想寫入一個文件時,庫或操作系統API會自動爲你創建它,如果它不存在的話。具體如何控制這取決於您將使用的API。
只需打開文件進行寫入。另外,在C中沒有'try' /'catch'塊這樣的東西,因爲語言沒有例外 – 2012-03-11 21:22:51
所以,fopen會創建一個文件,如果它不存在? – spatara 2012-03-11 21:24:13
其實,如果文件存在,你會覆蓋它,或者追加到文件末尾,會發生什麼呢? – 2012-03-11 21:25:02