計算機文件的類型 計算機文件的存取

文件是在計算機內存中以二進制表示的數據在外部存儲介質上的另一種存放形式。文件通常分爲二進制文件和文本文件。二進制文件是包含在ASCⅡ及擴展ASCⅡ字符中編寫的數據或程序指令的文件,一般是可執行程序、圖形、圖像、聲音等文件。文本文件(也稱爲ASCⅡ文件):它的每一個字節存放的是可表示爲一個字符的ASCⅡ代碼的文件,它是以“行”爲基本結構的一種信息組織和存儲方式的文件,可用任何文字處理程序閱讀的簡單文本文件。

雖然文件分爲二進制文件和文本文件,但實際上它們都是以二進制數據的方式存儲:文件只是計算機內存中以二進制表示的數據在外部存儲介質上的另一種存放形式。對於文本文件來說,它只是一種特殊形式的文件,它所存放的每一個字節都可以轉換爲一個可讀的字符。

 

當按照文本方式向文件中寫入數據時,一旦遇到“換行”字符(ASCⅡ碼爲10),則會轉換爲“回車—換行”(ASCⅡ碼分別爲13、10)。在讀取文件時,一旦遇到“回車—換行”的組合(連續的ASCⅡ碼爲13、10),則會轉換爲換行字符(ASCⅡ碼爲10)。當按照二進制方式向文件中寫入數據時,則會將數據在內存中的存儲形式原樣輸出到文件中。

 

由於文本方式和二進制方式在讀取和寫入文件時的差異,所以在寫入和讀取文件時要保持一致。如果採用文本方式寫入,應採用文本方式讀取;如果採用二進制方式寫入數據,在讀取時也應採用二進制方式,否則會出現問題。例如位圖文件可能有多個13、10組合,如果以二進制方式讀取的話,不會有問題,但是如果以文本方式讀取的話,就會把這些組合轉換爲換行符:10,從而導致位圖數據的丟失。不管文本文件,還是二進制文件,如果統一採用二進制方式進行寫入和讀取,則不會出錯,因爲這種讀取和寫入是嚴格按照一個字節一個字節地進行的。

 

一定要注意文本文件和二進制文件、文本方式和二進制方式之間的差別,不要混淆。不管是文本文件還是二進制文件,都可以採用二進制方式或文本方式打開,然後進行寫入或讀取,但是對於二進制文件來說,如果以文本方式讀取時,可能會出現一些問題。

《VC++深入詳解》——孫鑫

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章