在linux系統中,萬物皆檔案。舉個例子,對一塊裝置進行操作,實際上就是對這塊裝置的裝置檔案進行讀寫操作。為此,還專門產生了乙個叫檔案系統的東西。c語言為我們提供了一系列檔案的讀寫操作函式。
fopen函式開啟檔案的同時,返回file*檔案指標,這個指標指向對應檔案的檔案資訊區。所謂的檔案資訊區,也就是乙個結構體,如下所示。通過檔案指標,可以訪問檔案資訊區(結構體)的各種成員變數。
struct _iobuf
;typedef
struct _iobuf file;
基本使用方式:
file* pf =
fopen
(filename,mode)
;//判斷檔案指標是否為null
if(pf ==
null).
..
字元讀寫,fputc和fgetc。fgetc從流中讀乙個字元,並且返回對應的ascii碼,當遇到錯誤或讀取結束時,返回eof。
字串讀寫,fputs和fgets。fgets從流中讀取乙個字串,當遇到錯誤或讀取結束時,返回null,這時可以用feof和ferror判斷是那種情況。
while
((c =
fgets
(fp))!=
null
)//判斷是什麼原因結束的if(
ferror
(fp)
)puts
("i/o error when reading");
elseif(
feof
(fp)
)puts
("end of file reached successfully"
);
fread和fwrite適用於二進位制的輸入和輸出。fread從流中讀取資料,返回具體讀到的資料的數量,當返回的數量小於指定的個數時,讀取結束,這可能是遇到錯誤或讀取結束時,這時可以用feof和ferror判斷是那種情況。
fclose函式關閉開啟的流。
基本使用方式:
fclose
(pf)
;pf =
null
;
關閉pf檔案指標指向的流後,pf依然是指向先前開啟的空間,因此還應該賦值為null。 渲染大量資料我是這樣操作的
事情的由來是這樣紫的,目前我負責公司內部的核心業務gis天眼系統開發,遇到乙個問題就是 後端返回幾千條資料導致瀏覽器渲染失敗,瀏覽器幾乎是停滯狀態。後來沒有想到合適的解決方案,臨時渲染少量資料解決了。我記得清清楚楚,我已經看過關於這樣的問題怎麼解決,可惜我沒有使用,原因是學而不思,看而不用。後來由於...
渲染大量資料我是這樣操作的
事情的由來是這樣紫的,目前我負責公司內部的核心業務gis天眼系統開發,遇到乙個問題就是 後端返回幾千條資料導致瀏覽器渲染失敗,瀏覽器幾乎是停滯狀態。後來沒有想到合適的解決方案,臨時渲染少量資料解決了。我記得清清楚楚,我已經看過關於這樣的問題怎麼解決,可惜我沒有使用,原因是學而不思,看而不用。後來由於...
渲染大量資料我是這樣操作的
事情的由來是這樣紫的,目前我負責公司內部的核心業務gis天眼系統開發,遇到乙個問題就是 後端返回幾千條資料導致瀏覽器渲染失敗,瀏覽器幾乎是停滯狀態。後來沒有想到合適的解決方案,臨時渲染少量資料解決了。我記得清清楚楚,我已經看過關於這樣的問題怎麼解決,可惜我沒有使用,原因是學而不思,看而不用。後來由於...