查看 xls 格式的 excel 里的组成内容时,发现里面有个部分是 XFS ,表示 XF 的集合内容,
XFS = 16* XF [XFCRC 16*4050XFExt] 我想意思大概是有 16 个 XF , 然后接下来的 XFCRC 是可选的,然后后面这个 16 * 4050XFExt 是真的不明白,XFExt 也是一个结构,只知道 4050 是 XFExt 里某个组成的最大值
因为我把 WPS 新建的一个 xls 解析出来看了下,我新建的这个有 64 个 XF ,所以这里 16*XF ,是指 16 的倍数个 XF ?
还有类似的 FORMATTING = 1* 510Font 8* 218Format XFS *DXF STYLES [TABLESTYLES] [Palette] [ClrtClient]
这个 1* 510Font 8* 218Forma 都不明白是什么意思,还说这个 * 有特别的意思?
xls 组成文档地址
1
feiyan35488 86 天前
可以看 poi 的源码
|
2
iapplebear 86 天前 1
chatGPT:
在 Excel 的二进制文件格式(如 XLS 格式)中,XFS 表示一个单元格格式的集合,其中包括了多个 XF ( Extended Format )记录。XF 记录用于描述单元格的显示格式和样式。让我们详细解析一下: 16*XF:这表示有 16 个 XF 记录。这些记录描述了单元格的样式和格式。 XFCRC 16*4050XFExt: XFCRC:这通常是一个校验值,用于验证 XF 记录的完整性。 16*4050XFExt:这表示有 16 个长度为 4050 的 XFExt ( Extended XF )记录。XFExt 是扩展的 XF 记录,用于描述更复杂或更详细的格式信息。 在简化的解释中: 16*XF:文件中有 16 个 XF 记录。这些 XF 记录是基本的单元格格式信息。 XFCRC:这是校验和,用于确保 XF 记录的完整性。 16*4050XFExt:文件中有 16 个扩展的 XF 记录,每个记录的长度为 4050 字节。这些扩展记录提供了额外的格式和样式信息。 这些格式和样式信息可能包括字体、对齐方式、边框、背景颜色等详细的样式设置。这些信息是为了更精细地控制 Excel 工作簿中的单元格外观。 总结起来,这些表示法是为了描述 Excel 二进制文件中复杂的单元格格式信息。Excel 使用这些记录来管理和应用单元格的显示样式。 |
3
tool2dx 86 天前
我都是直接用 xml 或者 xlsx 导出数据,你这个二进制格式也太老了,微软自己都放弃了,完全没必要支持的。
|
4
jonathanchoo 86 天前
@iapplebear 16 年注册的号就这么没了吗
|
5
Desdemor 85 天前
4# 第一次好像只是降权
|
6
zurmokeeper OP @tool2dx 还是不少人反应有需要
|
7
zurmokeeper OP @iapplebear 我也不确定了,我把 xls 解析出来,XF 就是 64 个了,那就不会是 16 个 XF 了,而且 XFExt 的长度也不是 4050 ,只是最大长度是 4050
|