[問題] fgets只讀第X個字出來比較

看板C_and_CPP作者 (呼嚕呼嚕啦啦啦)時間14年前 (2010/07/09 15:52), 編輯推噓1(109)
留言10則, 5人參與, 最新討論串1/2 (看更多)
遇到的問題: (題意請描述清楚) 預開啟的txt檔中每行資料都固定長度 目前知道while(fgets(line,50,fp)!=NULL){}可以每次讀出一行 但是我想取其中指定位置出來比較 例如: 要開的txt檔(資料庫)如下: 98 7 1 22 207 213 231 214 223 191 196 208 212 213 211 171 98 7 1 31 0 0 0 0 0 0 0 0 0 100 203 205 98 7 1 32 204 205 205 204 201 0 0 0 0 0 0 0 98 7 11011 12 13 13 13 13 13 13 13 13 13 13 13 98 7 11012 12 13 13 10 11 11 13 13 14 14 13 0 98 7 11021 428 394 390 394 382 349 370 325 368 326 350 401 98 7 11022 396 403 400 398 393 373 383 399 397 389 384 367 98 7 11031 440 480 440 440 440 440 440 380 360 420 420 400 98 7 11032 420 420 420 420 440 420 380 480 420 440 420 370 ...(資料每行都一樣長) 自己定另數字列 struct1.num為 3,104,115... struct2.num為 102,103... 1.每次讀一行 讀第7~9位置出來與自己訂好的數字列做比較 2.若相同 則輸出存到指定的txt中 ex:第2行讀出來是" 3"與struct1.num比相同 則輸出第2行整行在1.txt中 以此類推,第3行存到1.txt中,第6~9行存到2.txt開發平台: Dev C (C語言) 補充說明: 再請教,如此讀出來應該也是一次讀一個數字例如 1 0 3 而不是讀出整數103 那我自訂的數字列(有一百多個數字) 該怎麼存呢? 謝謝 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.135.12.152

07/09 16:33, , 1F

07/09 16:39, , 2F
感謝解答 趕緊來研究看看 ^^
07/09 16:39, 2F

07/09 16:50, , 3F
loveme00835 的寫法會出問題~
07/09 16:50, 3F

07/09 17:02, , 4F
@口@ 啥咪問題?
07/09 17:02, 4F

07/09 17:06, , 5F
fflush( ); 不是只能用在 stdout ?
07/09 17:06, 5F

07/09 17:07, , 6F
或其他一樣是 output 方式
07/09 17:07, 6F

07/09 17:14, , 7F
在 Dev C++ 裡是把 buffer 清空, 其他就要看實作方式
07/09 17:14, 7F

07/10 08:20, , 8F
C語言一個很嚴重的問題就是有太多東西是depend on compiler
07/10 08:20, 8F

07/10 08:21, , 9F
這個問題有時會嚴重影響C的可移殖性
07/10 08:21, 9F

07/11 10:13, , 10F
感謝回答 測試可以成功分出來 謝謝
07/11 10:13, 10F
文章代碼(AID): #1CDjKsc9 (C_and_CPP)
文章代碼(AID): #1CDjKsc9 (C_and_CPP)