[問題] 請問如何讀取檔名可以改變的資料 ?

看板C_and_CPP (C/C++)作者 (報告站長 PTTers 咬我 !)時間15年前 (2010/10/10 14:49), 編輯推噓0(0013)
留言13則, 3人參與, 最新討論串1/1
例如我想要讀資料的檔名是 a01.txt ,a02.txt, ...... a999.txt . 我想用一個程式去讀取不同的檔案,分到 50 台不同的電腦上跑. 每台電腦跑 20個.一個接一個的跑. 我可以用一個*.csh檔在linux 上把他們分配給不同的電腦. (目前我有50台電腦的使用權). 請問一下 C++中有一個指令可以方便我讀檔的嗎 ? 像 ./read.exe a01.txt ./read.exe a02.txt 他就會幫我讀好.有想過用 scanf.但因為一個資料要跑很久. ------------------------------------------------------- char c; scanf("%s",&c); FILE *ctrlfile=fopen(&c,"r"); 不可能24小時等著所以放棄.... 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.170

10/10 14:59, , 1F
檔名格式有規律,可以使用 sprintf 來處理
10/10 14:59, 1F
※ 編輯: PTTers 來自: 140.112.4.170 (10/10 15:08)

10/10 15:14, , 2F
所以..你是要讀"其它台電腦檔案之資料"是嗎?
10/10 15:14, 2F

10/10 15:15, , 3F
char c, scanf("%s",&c); => 改 char c[BUF_LEN] ..
10/10 15:15, 3F

10/10 15:17, , 4F
至於你說不知道檔案什麼時候處理完,最簡單但沒效率的方
10/10 15:17, 4F

10/10 15:18, , 5F
法是,處理好的電腦放一個檔案(ex:OK.txt),到時ser讀到
10/10 15:18, 5F

10/10 15:18, , 6F
這個檔案時就知道那台電腦有哪些檔案處理完,當然在處
10/10 15:18, 6F

10/10 15:19, , 7F
理前先把(OK.txt)識別檔砍掉.這是我之前用最簡單的方式
10/10 15:19, 7F
感謝你.我不是要讀"其它台電腦檔案之資料". 可以教一下如何讀一個檔案是不是存在嗎 ? 例如我跑完後會生成 a01.out , a02.out. 如何用 C++讀他們是不是存在 ? ※ 編輯: PTTers 來自: 140.112.4.170 (10/10 15:25) ※ 編輯: PTTers 來自: 140.112.4.170 (10/10 15:26) ※ 編輯: PTTers 來自: 140.112.4.170 (10/10 15:27)

10/10 15:32, , 8F
判別檔案是否存在,效率差用 fp=fopen("a01.out","rb");
10/10 15:32, 8F

10/10 15:33, , 9F
if(fp==NULL) {"不存在"};
10/10 15:33, 9F

10/10 15:34, , 10F
效率要好可參考z-10-2
10/10 15:34, 10F

10/10 15:42, , 11F
thank u trop大
10/10 15:42, 11F

10/10 15:48, , 12F
= = 原來更有效率的方法在這.. http://ppt.cc/KmNs
10/10 15:48, 12F

10/10 15:48, , 13F
調用 _access, _waccess 函式
10/10 15:48, 13F
文章代碼(AID): #1CiM8B4n (C_and_CPP)
文章代碼(AID): #1CiM8B4n (C_and_CPP)