3

Excel 可以将其工作簿保存为“XML 表”格式,保留所有格式和样式信息,然后将它们作为原生 Excel 工作簿打开和编辑。我希望通过Mathematica for Excel 生成此类文件,以编程方式添加行、列、单元格等的格式信息。

第一个绊脚石的问题是,即使我在MathematicaImport中生成 Excel 文件,然后将其返回到生成的文件,Excel 也无法打开。在文本编辑器中打开它会显示该文件包含撇号而不是引号。添加选项以解决此问题,但生成的文件仍然无法由 Excel 打开。更仔细的比较表明,它还删除了生成文件中的大部分命名空间前缀。Export"XML""AttributeQuoting" -> "\""ExportExport

如何从Mathematica生成与 Excel 兼容的 XML 文件?

PS这个问题来自上一个问题:“如何从Mathematica 将数字作为文本字段导出到Excel?

4

1 回答 1

1

我找到了解决方案。从文档中,

一些文档以不符合命名空间的方式使用名称,因为扩展 XML 的 XML 命名空间推荐是在最初的 XML 推荐之后提出的。"IncludeNamespaces"->"Unparsed"提供以允许解析这些文档。该名称始终表示为 XML 文件中出现的确切的单个字符串。除非绝对必要,否则不应使用此选项值。

有了这个选项,"IncludeNamespaces"->"Unparsed"一切都很好,甚至"AttributeQuoting" -> "\""不需要这个选项:

XMLData = Import["test.xml", "IncludeNamespaces" -> "Unparsed"];
Export["test-from MMa.xml", XMLData]

导出的文件由 Excel 打开,没有警告。

于 2012-08-18T03:50:28.740 回答