【问题标题】:Generating Excel-compatible XML files from Mathematica从 Mathematica 生成与 Excel 兼容的 XML 文件
【发布时间】:2012-07-02 08:49:08
【问题描述】:

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

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

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

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

【问题讨论】:

  • 版本 8 可以保存为 .xlsx,基于 XML 的格式:这是否满足您的需求?顺便说一句,您可能会在mathematica.stackexchange.com 上获得更快的答案 - 大多数专家已经搬到那里。
  • @Verbeia 当我简单地将Export XML 数据转换为 .xlsx 格式时,我得到一个文件,其中所有 XML 数据都简单地放在一个单元格中。所以这不是我需要的。感谢您的建议,现在我在mathematica.stackexchange.com 上创建了separate question

标签: xml excel wolfram-mathematica


【解决方案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 打开,没有警告。

【讨论】:

    猜你喜欢
    • 2019-06-11
    • 2020-04-27
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 1970-01-01
    • 1970-01-01
    • 2011-06-07
    • 2011-12-28
    相关资源
    最近更新 更多