.xlsx 和 .zip 之间的转换

Conversion between .xlsx and .zip

我想操作 Excel 的 Office Open XML 格式,但即使只是 .zip.xlsx 之间的转换也会产生错误:

  1. 通过 Excel
  2. 创建一个非常简单的 test.xlsx
  3. 右击 test.xlsx => Rename 作为 text.xlsx.zip
  4. 右键单击 text.xlsx.zip => Extract all 到名为 text.xlsx
  5. 的文件夹
  6. 右键单击 text.xlsx 文件夹 => Send to => Compressed (zipped) folder 名为 text_2.xlsx.zip
  7. 右击 text_2.xlsx.zip => Rename as text_2.xlsx
  8. 用Excel打开text_2.xlsx,然后出现以下错误:

有人知道那里出了什么问题吗?

.***x 文件是 zip 文件,但压缩方法与 Windows Explorer 使用的标准压缩方法不同。 Windows Explorer 进行绝对压缩(无论它可以安全地压缩什么,它都会压缩),MS Office 和 OpenXML 保留必要的部分未压缩以供应用程序读取时使用。

编辑:我要补充一点,您可以将文件压缩备份并再次将它们用作 xlsx,但您必须确保使用与 Excel 或 OpenXML 相同的压缩方法。

Xlsx 文件只是普通的 zip 文件,绝对可以做你想做的事。

Does anyone know what's wrong there?

我猜第 4 步:

  1. Right-click text.xlsx folder => Send to => Compressed (zipped) folder named text_2.xlsx.zip*

您需要将 内容 压缩到文件夹而不是文件夹本身。生成的 zip 文件应在顶层包含 [Content_Types].xml 个文件,没有父文件夹。