0

我需要创建一个要转换为 excel 文件(.xls)的 xml 文件,这意味着 xml 中有很多元信息。将所有内容作为文本文件写入 xml 文件很容易。

var sw = new FileInfo(tempReportFilePath).CreateText();
sw.WriteLine("meta info and other tags")

但是,此方法不会转义字符,并且当数据包含“<”或“>”或“&”等时,xml 将被渲染为无效并且 .xls 文件无法打开。我可以轻松地进行替换('<' 与 '<' 等等),但出于性能原因,这种方法不适合。

另一种选择是使用 xml 文本编写器,但有大量元信息,这意味着在代码中编写大量标签。使用 sw.WriteLine('stuff'),我可以简单地将部分元信息放在一个标签中(作为字符串)并将它们写入文件。使用 xslt,我面临的问题是标签需要空格。例如,对于表格数据,顶行字段可以有空格。如何创建一个包含大量元信息的格式良好的 xml 文件,以及字符('<'、'>' 等)在哪里被排除?

4

3 回答 3

0

为什么不首先创建 xls,有一个不错的库可以这样做:

http://npoi.codeplex.com/

于 2012-07-17T09:29:28.107 回答
0

我使用 WriteRaw 方法来编写元信息标签。对于需要转义的其他数据,我使用了 WriteString 方法。

于 2012-09-25T06:45:38.900 回答
0
  1. Uri.EscapeDataString(string stringToEscape);
  2. XDocument教程
于 2012-07-17T09:18:44.087 回答