我在使用 sax 解析 xlsx 格式 excel 文件的时候遇到 workbook.xml 和 sheet.xml 内容不正常的情况, 具体是这样的:
1.需求是获取 excel 中指定 sheet 数据,我计划是先解析 workbook.xml 中 <sheets>
标签数据,比如:
<workbook>
...
<sheets>
<sheet name="测试 Sheet" r:id="rId3" sheetId="1"/>
</sheets>
</workbook>
根据这个workbook.xml
的sheet
标签内容,来获得r:id
值,然后直接读取指定 sheet 文件流,但是发现有些r:id
和sheetId
并不是准确一一对应的,例如上面的内容,实际 excel 只有一个 sheet 测试 Sheet
那么r:id
值应该是rId1
但是这里是rId3
, 导致我不知道怎么去匹配 sheet.
我一直没有找到合适的解决办法, 求助大家?
2.在sheet.xml
文件中, 获取开始、结束列和行号也不准确, 例如出现这种:
<worksheet ...>
<dimension ref="A1"/>
...
</worksheet>
正常情况下,标签<dimension
应该是 <dimension ref="A1:C15"/>
这样的, 我原计划是打算通过这个来查找空单元格,现在我是通过解析cols
标签来判断前中后是否有空单元格, 请问大家有什么好的解决办法处理这个问题?
上面表述可能比较繁琐, 但是没有找到更简洁明了的表述, 如果大家有什么疑问麻烦回复下我, 帮我看看这两个问题, 非常感谢大家!!!