看板 Programming 關於我們 聯絡資訊
真是感謝版友的指導.. 其實不太懂I/O的機制..如果很低階I/O 會每讀一個字母就讀一次嗎 還是會自動Buffer, 因為我之前的I/O太慢, 還自己寫了一個buffer的class 做batch read write, 但copy 到 buffer在一個個看'\n'會比 fgetc 然後檢查慢嗎 另外 有些OS有提供AP來判斷檔案大小, 比如說我們 ls就時可看到 那個不應該是去數出來而是os 記得的大小吧 但是換行就沒記 只有檔案大小有記 應該是這樣吧 ※ 引述《sorryChen (陳揚和)》之銘言: : 一定要讀過每個字元然後看有幾個\n嗎, 因為檔很大時還滿慢的 : call system call wc 應該就更慢了 : 要怎麼知道檔案有多大我也不確定 這個file system 應該有紀錄 : 不用一個個字元數.. 但有os independent的函數可回傳檔案大小嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 128.125.87.33
sunneo:取得檔案位址h,移動到檔尾t,計算得到t-d 61.227.229.42 02/23 11:01
sunneo:這是取得檔案大小一般的做法 61.227.229.42 02/23 11:01
sunneo:是在檔案結構沒有損毀的情況 算是os記的吧 61.227.229.42 02/23 11:02
tinlans:低階 I/O 通常要自己指定 buffer 大小。 118.160.104.77 02/23 18:47
tinlans:一次只讀一個字元通常會很慢。 118.160.104.77 02/23 18:48