使用xslt编程将csv转换为xml文件生成

时间:2013-05-16 09:58:34

标签: csv

我想使用xslt从extisng csv文件生成xml文件。

任何人都可以告诉我使用命令。

我不知道转换文件的命令。

假设我的csv文件名为: - source.csv 输出模板: - temp.xsl

命令: - msxsl source.csv temp.xsl -o result.xml

这是正确的命令吗?

2 个答案:

答案 0 :(得分:0)

以下是将CSV转换为XML的XSL文件:http://andrewjwelch.com/code/xslt/csv/csv-to-xml_v2.html

要从命令行运行它,说明说要下载Saxon并使用:

java -cp saxon.jar net.sf.saxon.Transform -o output.xml -it main csv-to-xml.xslt pathToCSV=file:/C:/dev/test.csv

以下是该命令行的部分说明:

  • java java可执行文件(编写Saxon的编程语言)
  • -cp saxon.jar saxon.jar包含XSLT代码,-cp代表“classpath”并告诉java如何找到它
  • -o output.xml输出应该去哪里。在您的示例中,这是result.xml
  • -it main csv-to-xml.xslt指定xslt文件(csv-to-xml.xslt)及其中的入口点(主要)
  • pathToCSV=file:/C:/dev/test.csv您输入的csv文件(在您的示例中为source.csv,但格式化为网址)

答案 1 :(得分:0)

我没有足够的声誉评论斯蒂芬的回答。

  • 所描述的转换高度依赖于定义参数pathToCSV的XSL样式表和标识符为“main”的模板
  • 该命令无法正常运行,因为Stephen已将其编写为家庭版的第9版;当我尝试按命令运行命令时,我收到“命令行选项-o需要值”的响应。但是,此命令的格式在发布之日起作用:

    java -cp saxon9he.jar net.sf.saxon.Transform -o:csvfile.xml -it:main“csv2xml.xsl”pathToCSV =“csvfile.csv”

  • 链接的xsl似乎是错误的(可能尚未维护),并且无法正确转换所有csv文件(例如Michael Kay的书中的csv示例)。但是,这是一个很好的例子,可供学习。