fread :以位元組位計算長度,按照指定的長度和次數讀取資料,遇到結尾或完成指定長度讀取後停止.
fgets :整行讀取,遇到斷行符號換行或結尾停止.在文本方式時使用.
讀字串函數fgets函數的功能是從指定的檔案中讀一個字串到字元數組中,
函數調用的形式為:
fgets(字元數組名,n,檔案指標);
其中的n是一個正整數。
表示從檔案中讀出的字串不超過 n-1個字元。
在讀入的最後一個字元後加上串結束標誌'\0'。
例如:fgets(str,n,fp);的意義是從fp所指的檔案中讀出n-1個字元送入字元數組str中。
按行讀取)fgets()每次讀入一行就會指向下一行.
所以把前面10行讀進去了就清除.
然後下一次fgets()就是第十一行了.
fgets()怎麼每次都是讀一行?你怎麼設定?
fread是用於整塊資料的讀寫函數,可用來讀寫一組資料,如一個數組元素,一個結構變數的值等。
讀資料區塊函數調用的一般形式為:
fread(buffer,size,count,fp),其中buffer是一個指標,
在fread函數中,它表示存放輸入資料的首地址。
size 表示資料區塊的位元組數。
count 表示要讀寫的資料區塊塊數。
fp 表示檔案指標。
例如: fread(fa,4,5,fp); 其意義是從fp所指的檔案中,每次讀4
fread -- 讀取檔案(可安全用於二進位檔案)
在區分二進位檔案和文字檔的系統上(如 Windows)開啟檔案時,
fopen() 函數的 mode 參數要加上 'b'。
$handle = fopen($filename, "rb");
本人使用的方法,如果你有好的方法,大家分享下啊
複製代碼 代碼如下:
<?php
$handle = @fopen($path, "r");
if ($handle) {
$buffer = fread($handle, 400);
echo $buffer;
fclose($handle);
}
?>