根据字节区分excel文件types,而不是扩展名

我目前有一个方法,接收一个Excel文件的字节数组。 它工作得很好,我根据文件中的前两个字节区分了文件types( .xls.xlsx )。 如果它是一个.xlsx它开始与PK。 不幸的是,现在我正在发送.xlsm文件,我不知道什么字节不同来区分它们。 我没有这个文件名来获得扩展名。

.xlsx和.xlsm的唯一区别在于后者可能包含macros。 我很确定你需要进一步的parsing文件才能find答案。

请注意,.xlsx开头的幻数“PK”(实际上是PK \ x03 \ x04)是指ZIP压缩数据。 要进一步parsing文件,首先必须根据ZIP文件格式解码(解压缩)。

Interesting Posts