xml数据到excel的转换

本文关键字:转换 excel 数据 xml | 更新日期: 2023-09-27 18:00:01

如何将以下数据转换为excel。输入数据在.txt文件中,如下所示:

<xml>1,4,,5,<header>2,44,,55,6,2,</header></xml>
<xml><header>23,5,6,,2</header>3,4,5,66,,</xml>
and so on..

基本上去掉标签并将数据放入excel中。每个数字都应该在自己的单元格中,空值应该导致空单元格。对于上面的例子,.xls中的输出应该是这样的。。

1 4   5  2 44  55 6 2  
23 5 6  2 3 4 5 66  

无法真正进行任何格式化以使输出看起来更好,但基本上每个数字都有自己的单元格和缺失数据的空白区域。我所说的数据缺失,是指输入中两个逗号之间的任何内容,正如您在上面看到的(,,)。

同样在人们问我尝试了什么之前,我将数据转换为csv,然后使用EPPlus将其写入excel文件,但这有太多问题,这不是直接转换,数据没有正确写入,我的代码太乱了。因此,排除故障并修复它不是一个好主意。我相信有一个更简单的解决方案。任何帮助都将不胜感激!

xml数据到excel的转换

如果可以使用XSLT,请使用以下样式表:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
   <xsl:output method="text"/>
   <xsl:strip-space elements="*"/>
   <xsl:template match="row">
      <xsl:value-of select="."/>
      <xsl:text>&#10;</xsl:text>
   </xsl:template>
</xsl:stylesheet>

应用于以下输入:

<input>
   <row>1,4,,5,<header>2,44,,55,6,2,</header></row>
   <row><header>23,5,6,,2</header>3,4,5,66,,</row>
</input>

生成以下CSV:

1,4,,5,2,44,,55,6,2,
23,5,6,,23,4,5,66,,

您也可以很容易地添加一些列标题。

因此,在我实际花时间运行示例之后的最后步骤:

1) 在任何文本编辑器中加载文件

2) 找到运行查找"<.*>"并替换为"的方法

3) 使用.csv扩展名保存文件

4) 在下一次打开时尝试使用Excel打开

-这些步骤产生了你想要的东西