複製鏈接
請複製以下鏈接發送給好友

文本文件

鎖定
文本文件是一種計算機文件,它是一種典型的順序文件,其文件的邏輯結構又屬於流式文件。
特別的是,文本文件是指以ASCII碼方式(也稱文本方式)存儲的文件,更確切地説,英文、數字等字符存儲的是ASCII碼,而漢字存儲的是機內碼。文本文件中除了存儲文件有效字符信息(包括能用ASCII碼字符表示的回車、換行等信息)外,不能存儲其他任何信息。 [1] 
中文名
文本文件
外文名
textfile
拼    音
wén běn wén jiàn
擴展名
txt、.doc.、.docx、.wps

文本文件簡介

文本文件是一種由若干行字符構成的計算機文件。文本文件存在於計算機文件系統中。通常,通過在文本文件最後一行後放置文件結束標誌來指明文件的結束。
文本文件是指一種容器,而純文本是指一種內容。文本文件可以包含純文本。
一般來説,計算機文件可以分為兩類:文本文件和二進制文件 [2] 

文本文件格式

文本文件ASCII

文件 文件
ASCII標準使得只含有ASCII字符的文本文件可以在UnixMacintoshMicrosoft WindowsDOS和其它操作系統之間自由交互,而其它格式的文件是很難做到這一點的。但是,在這些操作系統中,換行符並不相同,處理非ASCII字符的方式也不一致。

文本文件MIME

文本文件在MIME標準中的類型為“text/plain”,此外,它通常還附加編碼的信息。在Mac OS X出現前,當Resource fork指定某一個文件的類型為“TEXT”時,Mac OS就認為這個文件是文本文件。在Windows中,當一個文件的擴展名為“txt”時,系統就認為它是一個文本文件。此外,處於特殊的目的,有些文本文件使用其它的擴展名。例如,計算機的源代碼也是文本文件,它們的後綴是用來指明它的程序語言的。

文本文件.txt

.txt是包含極少格式信息的文字文件的擴展名。.txt格式並沒有明確的定義,它通常是指那些能夠被系統終端或者簡單的文本編輯器接受的格式。任何能讀取文字的程序都能讀取帶有.txt擴展名的文件,因此,通常認為這種文件是通用的、跨平台的。
在英文文本文件中,ASCII字符集是最為常見的格式,而且在許多場合,它也是默認的格式。對於帶重音符號的和其它的非ASCII字符,必須選擇一種字符編碼。在很多系統中,字符編碼是由計算機的區域設置決定的。常見的字符編碼包括支持許多歐洲語言的ISO 8859-1
由於許多編碼只能表達有限的字符,通常它們只能用於表達幾種語言。Unicode制定了一種試圖能夠表達所有已知語言的標準,Unicode字符集非常大,它囊括了大多數已知的字符集。Unicode有多種字符編碼,其中最常見的是UTF-8,這種編碼能夠向後兼容ASCII,相同內容的的ASCII文本文件和UTF-8文本文件完全一致。

文本文件Windows的.txt文件

微軟的MS-DOS和Windows採用了相同的文本文件格式,它們都使用CR和LF兩個字符作為換行符,這兩個字符對應的ASCII碼分別為13和10。通常,最後一行文本並不以換行符(CR-LF標誌)結尾,包括記事本在內的很多文本編輯器也不在文件的最後添加換行符。
大多數Windows文本文件使用ANSI、OEM或者Unicode編碼。Windows所指的ANSI編碼通常是1字節的ISO-8859編碼,不過對於像中文、日文、朝鮮文這樣的環境,需要使用2字節字符集。在過渡至Unicode前,Windows一直用ANSI作為系統默認的編碼。而OEM編碼,也是通常所説的MS-DOS代碼頁,是IBM為早期IBM個人電腦的文本模式顯示系統定義的。在全屏的MS-DOS程序中同時使用了圖形的和按行繪製的字符。新版本的Windows可以使用UTF-16LE和UTF-8之類的Unicode編碼。

文本文件數據存儲

由於結構簡單,文本文件被廣泛用於記錄信息。它能夠避免其它文件格式遇到的一些問題。此外,當文本文件中的部分信息出現錯誤時,往往能夠比較容易的從錯誤中恢復出來,並繼續處理其餘的內容。文本文件的一個缺點是,它的往往較低,也就是説,可以用較小的存儲空間記錄這些信息。

文本文件與二進制文件比較

文本文件定義

計算機的存儲在物理上是二進制的,所以文本文件與二進制文件的區別並不是物理上的,而是邏輯上的。這兩者只是在編碼層次上有差異。
簡單來説,文本文件是基於字符編碼的文件,常見的編碼有ASCII編碼,UNICODE編碼等等。二進制文件是基於值編碼的文件,你可以根據具體應用,指定某個值(可以看作是自定義編碼)。
從上面可以看出文本文件基本上是定長編碼的(也有非定長的編碼如UTF-8),基於字符,每個字符在具體編碼中是固定的,ASCII碼是8個比特的編碼,UNICODE一般佔16個比特。而二進制文件可看成是變長編碼的,因為是值編碼,多少個比特代表一個值,完全由自己決定。

文本文件存取

文本工具打開一個文件,首先讀取文件物理上所對應的二進制比特流,然後按照所選擇的解碼方式來解釋這個流,然後將解釋結果顯示出來。一般來説,你選取的解碼方式會是ASCII碼形式(ASCII碼的一個字符是8個比特),接下來,它8個比特8個比特地來解釋這個文件流。記事本無論打開什麼文件都按既定的字符編碼工作(如ASCII碼),所以當他打開二進制文件時,出現亂碼也是很必然的一件事情了,解碼和譯碼不對應。
文本文件的存儲與其讀取基本上是個逆過程。而二進制文件的存取與文本文件的存取差不多,只是編/解碼方式不同而已。

文本文件優缺點

因為文本文件與二進制文件的區別僅僅是編碼上不同,所以他們的優缺點就是編碼的優缺點。一般認為,文本文件編碼基於字符定長,譯碼容易;二進制文件編碼是變長的,所以它靈活,存儲利用率要高些,譯碼難一些(不同的二進制文件格式,有不同的譯碼方式)。
在windows下,文本文件不一定是ASCII來存貯的,因為ASCII碼只能表示128的標識,打開一個txt文檔,然後另存為,有個選項是編碼,可以選擇存貯格式,一般來説UTF-8編碼格式兼容性要好一些。而二進制用的計算機原始語言,不存貯兼容性。
參考資料
  • 1.    彭宣戈.計算機應用基礎:北京航空航天大學出版社,2004-09月
  • 2.    曹敏,餘勝泉.計算機應用基礎:北京理工大學出版社,2009-8-1