獲取文件大小的函數(shù) 如何用C語言獲取文件的大?。?/h1>
如何用C語言獲取文件的大?。?*解決方案:以只讀模式打開文件,然后在文件末尾找到文件指針,并使用fTell函數(shù)返回指針在文件中的相對位置。*/#包括“標(biāo)準(zhǔn)”。H“main(){file*FP/*定義文
如何用C語言獲取文件的大?。?/h2>
/*解決方案:以只讀模式打開文件,然后在文件末尾找到文件指針,并使用fTell函數(shù)返回指針在文件中的相對位置。*/
#包括“標(biāo)準(zhǔn)”。H“main(){file*FP/*定義文件指針*/long CNT/*定義變量CNT以存儲文件大小數(shù)據(jù)*/FP=fopen(”C:1)。TXT“,”R“/>*請在此處填寫測試文件的地址,并以只讀模式打開文件*/if(FP==null)/*如果打開的文件不存在,則退出*/{exit(0)Printf(”file open failed!“)}fseek(fp,0L,SEEKEnd)/*使用fseek函數(shù)將指針定位到文件的末尾*/CNT=fTell(fp)/*使用fTell函數(shù)返回指針相對于文件開頭的位置,并計算*/printf(以字節(jié)為單位)(”文件占用的字節(jié)數(shù)為%LDn”,CNT)/*以輸出*/}
我也想知道這個問題。目前,當(dāng)我編寫自己的程序來處理CSV格式的文檔時,我使用fgets逐行讀取,讀取一行,處理一行,然后讀取下一行。處理的文件從幾兆字節(jié)到十幾兆字節(jié)不等,速度可以接受,但一半以上的時間都花在讀寫上。因為fgets有自己的緩沖區(qū),所以似乎沒有改進的余地。我試圖增加緩沖,但沒有明顯的效果。