是什么赋予了 Excel/csvs 其格式化功能?

是什么赋予了 Excel/csvs 其格式化功能?

当我双击打开一个 csv 文件时,它会打开,并且正如人们所期望的那样,将数据显示在一个大单元格数组中,顶部有一个格式选项功能区(剪贴板、字体、对齐方式等),就像 Excel 文件一样。

当我在 VSCode 中打开同一个 csv 时,我看到的更像一个简单的文本文件,如下所示:

Sr,S,V
67,30,-7
27,80,123
200,15,300
84,78,135
151,25,167
-1,98,148
51,87,120

我的问题是,在前一种情况下,是什么“创建”了所有的格式化功能?所有这些内容是如何编程的?

答案1

首先,请注意,如果您应用格式(字体、对齐方式等)并将其保存回 CSV,则不会保存您的格式。您可以看到 CSV 只是一些用逗号分隔的文本(因此格式名称为 - 逗号分隔值)。没有地方放格式。

因此,唯一的区别是单元格。Excel 通过搜索逗号和行尾自动将文件拆分为单元格。它还会“解释”数据,确定数字格式、日期、文本等(例如,默认情况下,数字和日期向右对齐,文本向左对齐)。它这样做是因为它是一个表格处理器,并且设计用于处理表格。VSCode 没有此功能,它只显示纯文本。

换句话说,Excel 在内存中将 CSV 转换为其原始格式,从而实现完整的功能。

您可以将表格连同格式一起保存为另一种文件格式,例如 XLSX,这种格式比 CSV 复杂得多,并且有地方保存格式。它在内部是一个包含 XML 文档的 ZIP 文件(可能包含其他文件,例如,如果您将图像插入表格,它将以其原始格式存储在 ZIP 文件中)。如果您有兴趣,可以解压缩并研究其内容。

相关内容