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

时间:2012-07-02 08:49:08

标签: xml excel wolfram-mathematica

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

第一个绊脚石问题是即使我在 Mathematica Import Excel生成的文件,然后只是Export它向后转移到"XML",结果文件也不能由Excel打开。在文本编辑器中打开它会显示该文件包含撇号而不是引号。将"AttributeQuoting" -> "\""选项添加到Export会修复此问题,但Excel仍无法打开生成的文件。更仔细的比较表明,Export也会在生成的文件中删除大部分名称空间前缀。

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

P.S。这个问题来自上一个问题:“How to export to Excel numbers as text fields from Mathematica?

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。 From the Documentation

  

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

使用选项"IncludeNamespaces"->"Unparsed"一切都很好,甚至不需要"AttributeQuoting" -> "\""选项:

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

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