Re: [問題] 輸出 ".txt檔名" 的問題

看板C_and_CPP作者 (天佑台灣)時間14年前 (2010/08/12 14:14), 編輯推噓1(1035)
留言36則, 6人參與, 最新討論串2/2 (看更多)
我也遇到了類似問題 可是看了推文後還是不太懂 我想產生g個txt檔 我是使用語法 pfile = fopen ("output.txt" , "a"); if ( pfile != NULL ) { fprintf(pfile,"%d %.2f \n",i,a[i][1]); fclose (pfile); 請問要如何才能讓輸出的黨名 *.txt 其中的*號,隨著變數i而改變 也就是希望能輸出 0.txt 1.txt 2.txt . . . g.txt 是要寫哪個語法嗎?還是更改什麼就好了? 感謝~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.134.72.65 ※ 編輯: nnishyang 來自: 140.134.72.65 (08/12 14:16)

08/12 14:21, , 1F
keyword : sprintf
08/12 14:21, 1F

08/12 14:40, , 2F
檔名也是一個字串,拼字串就好了。
08/12 14:40, 2F

08/12 14:45, , 3F
還是不太懂= ="
08/12 14:45, 3F

08/12 14:48, , 4F
sprintf(file_name,"%s.txt", "hello" );
08/12 14:48, 4F

08/12 14:48, , 5F
能印出啥東西, 表示你能開啥檔
08/12 14:48, 5F

08/12 15:22, , 6F
file_name undeclared
08/12 15:22, 6F

08/12 15:22, , 7F
sprintf(filename,"%d.txt",i);
08/12 15:22, 7F

08/12 15:24, , 8F
filename要宣告為字元陣列例如char fileaname[100];
08/12 15:24, 8F

08/12 15:27, , 9F
最後在pfile=fopen(filename,"w"); 其它就跟你寫的差不多.
08/12 15:27, 9F

08/12 15:37, , 10F
當掉了= =a 要重來了= = ㄆㄆ
08/12 15:37, 10F

08/12 15:46, , 11F
樓上您的方法會當掉 exe檔發生問題 必須關閉
08/12 15:46, 11F

08/12 15:51, , 12F
http://codepad.org/F6XVJOhr 提供程式碼好了
08/12 15:51, 12F

08/12 15:55, , 13F
- -filename請宣告在主程式內...還有100就很夠了...
08/12 15:55, 13F

08/12 16:03, , 14F
可以編譯也可以執行了 只是= =現在我要怎麼分辨-.-ㄆ
08/12 16:03, 14F

08/12 16:06, , 15F
sprintf(filename,"%d.txt",i);
08/12 16:06, 15F

08/12 16:07, , 16F
pfile=fopen(filename,"w");//filename沒有""
08/12 16:07, 16F

08/12 16:09, , 17F
fprintf(pfile,"...",...);//你要寫入的資料...
08/12 16:09, 17F

08/12 16:09, , 18F
fclose(pfile);
08/12 16:09, 18F

08/12 16:10, , 19F
這樣子跑出來的檔案就是1.txt , 2.txt ,3.txt,...
08/12 16:10, 19F

08/12 20:11, , 20F
目前都改好了 可是還是沒辦法跑出多個TXT檔ˊˋ
08/12 20:11, 20F

08/12 20:47, , 21F
目前程式碼為http://codepad.org/dfIKVIfX
08/12 20:47, 21F

08/12 21:09, , 22F
char filename[100];
08/12 21:09, 22F

08/12 21:13, , 23F
sprintf(filename,"%d.txt",i);//若i=1則filename="1.txt"
08/12 21:13, 23F

08/12 21:14, , 24F
pfile=fopen(filename,"W");//filename="1.txt"
08/12 21:14, 24F

08/12 21:15, , 25F
fprintf(pfile,"%d %.2f \n",i,a[i][1]);
08/12 21:15, 25F

08/12 21:16, , 26F
這樣就可以了...我只能教到這裡...在下去恕我無能為力
08/12 21:16, 26F

08/12 21:32, , 27F
感謝TO大 我快弄出來了~只剩一點要改了 謝嚕
08/12 21:32, 27F
※ 編輯: nnishyang 來自: 140.134.72.65 (08/12 22:09)

08/12 22:28, , 28F
我剛剛已經可以弄出多個txt檔 可是要跑出來的是從第30行
08/12 22:28, 28F

08/12 22:29, , 29F
到第59行的東西ˊˋ 怎樣讓那中間的東西跑再同一個檔案
08/12 22:29, 29F

08/12 22:29, , 30F
裡? 然後再輸出p個DAT檔?
08/12 22:29, 30F

08/12 22:29, , 31F
08/12 22:29, 31F

08/12 22:37, , 32F
看不懂你的中文,跑在同一個檔案是指哪個檔案啊?
08/12 22:37, 32F

08/12 23:34, , 33F
就是現在這個程式碼執行後會跑出來的東西,subjects輸入1
08/12 23:34, 33F

08/12 23:35, , 34F
的時候就是一個完整的DAT檔,我想要跑出P個完整的DAT檔
08/12 23:35, 34F

08/12 23:35, , 35F
目前的程式碼只能跑出一部分內容的DAT檔,不是我需要的DA
08/12 23:35, 35F

08/12 23:36, , 36F
T檔~這樣有比較清楚嗎= =? 國文造詣不太好請多原諒
08/12 23:36, 36F
文章代碼(AID): #1COv4lRN (C_and_CPP)
文章代碼(AID): #1COv4lRN (C_and_CPP)