为什么同一个文件在不同的应用程序运行时有不同的大小?

为什么同一个文件在不同的应用程序运行时有不同的大小?

在 Linux PC 上,我用“xed”文本编辑器保存了一个名为 tt-1.txt 的纯文本文件。根据文件管理器 --> 属性,tt-1.txt 的大小为 1.7 MB。然后,我使用 LibreOffice Writer 7.2 将 tt-1.txt 的内容复制到 tt-2.odt 文件中

然后我用文件管理器 --> 属性查看 tt-2.odt 的大小,结果竟然是……620,8 kB!?这怎么可能呢?

答案1

简短回答:两个文件都包含相同的文本,但格式不同,因此大小也不同

长答案:TXT 文件通常每个字符使用 1 个字节;如果您的文本是普通文本(没有表情符号等特殊字符),则文件的大小(以字节为单位)是文本中的字符数(字母、空格)。这还取决于 CR 和 LF 字符以及文件的最终结尾,这些字符可能由您的文本编辑器添加或不添加。

当每个字符使用 1 个字节并且文本是普通文本(例如,取自书籍)时,只会使用所有可能的 ASCII 字符的一小部分。因此,可以通过每个字符使用更少的位数来更有效地保存文本。

Word 或 LibreOffice 等程序意识到了这一点,并使用压缩格式,根据可能的优化自动减少文件的长度。但是,纯文本编辑器无法读取这些格式。

对于 Word 来说,docx 文档基本上是 ZIP 文件。

相关内容