2012-11-17 35 views
2

在C,我想創建和打開文本文件,將數據寫入創建的文件,但問題是我想的名字在旅途中的文件,如如何命名,並在一個循環

FILE *ptr; 

for(i=0;i<1000;i++){ 
    fopen_s(&ptr,"i.txt","w"); 
    operations to fill data into file i.txt; 
    fclose(ptr); 
} 

這樣我將創建文件0.txt,1.txt,2.txt ... 999.txt。

這怎麼可能?我檢查了打開和重命名函數,但找不到辦法。

非常感謝您的幫助。 最佳,

回答

6

使用snprintf設置文件編號:

FILE *ptr; 
char name[FILENAME_MAX]; 

for(i=0;i<1000;i++){ 
    snprintf(name, sizeof(name), "%d.txt", i); 
    fopen_s(&ptr, name, "w"); 
    //operations to fill data into file i.txt; 
    fclose(ptr); 
} 
+1

'FILENAME_MAX'比魔術常量256 –

+0

@larsmans更新更合適。 – iabdalkader

+0

謝謝,但是當我運行在VS 2008,我得到這些錯誤::錯誤LNK2019:無法解析的外部符號_snprintf函數中引用_main :致命錯誤LNK1120:1無法解析的外部你知道我該怎麼辦? – user1450005