2016-10-30 43 views
1

我正在閱讀關於二進制和文本文件,並且我遇到了這個問題:寫入和讀取的數據在二進制文件中保持不變?

二進制文件是字節的集合。在C中,一個字節和 的字符是等價的。因此,一個二進制文件也是 被稱爲字符流,但有兩個基本的差異 。

首先,被寫入並從 讀出的數據保持不變,用線條和 沒有用的結束行的字符之間沒有分離。 NULL行和末尾行字符沒有特別的意義,並且與其他任何數據字節一樣被視爲 。

這句話的意思是「首先,寫入和讀取的數據保持不變?」

回答

2

本書對比了寫入二進制文件的過程和寫入文本文件的過程。

當您將一個字節序列寫入一個二進制文件時,這就是將存儲在文件中的確切序列。當你讀迴文件時,你會得到你寫入文件的確切順序。

由於內置於API中用於從文本文件讀取的空白處理,文本模式下處理的文件不是這種情況。空格被視爲文本分隔符,所以大多數API不會向您返回空格,從而「改變」存儲在文件中的確切字節序列的表示。

相關問題