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?”
答案 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打开,没有警告。