文本文件

文本文件（text file，textfile，flatfile）一般指只有字符原生编码构成的二进制计算机文件，與富文本相比，其不包含字样样式的控制元素，能够被最简单的文本编辑器直接读取。

 数据存储 
由于结构简单，文本文件被广泛用于记录信息，它能够避免其它文件格式遇到的一些问题。此外，当文本文件中的部分信息出现错误时，往往能够比较容易的从错误中恢复出来，并继续处理其余的内容。文本文件的一个缺点是熵值较低，也就是说，其实本可以用更小的存储空间记录这些信息。

 格式 
 ASCII 
ASCII标准使得只含有ASCII字符的文本文件可以在Unix、Macintosh、Microsoft Windows、DOS和其它操作系统之间自由交互，而其它格式的文件是很难做到这一点的。但是，在这些操作系统中，换行符并不相同，处理非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
微軟記事本

Category:文件格式
Category:电脑数据