作为标题,但希望灵活地指定输出 xml 文件的外观。我可以使用 Windows 平台上的任何免费工具来实现这一目标吗?谢谢
11 回答
使用 XSLT 获得所需的输出格式。
CSV -> CSV2XML -> XSLT -> XML
XSLT 是“指定输出 xml 文件的外观”的真正而直接的方法。
您可以将其读入数据集并使用数据集的 WriteXML 方法输出到 XML。
看起来这个人使用了 XSLT。
您可以使用DBUnit和 Java:
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.excel.XlsDataSet;
import org.dbunit.dataset.xml.FlatXmlDataSet;
public class XlsToXml {
public static void main(String[] args) {
try {
FileInputStream stream = new FileInputStream(args[0]);
IDataSet dataset = new XlsDataSet(stream);
OutputStream out = new ByteArrayOutputStream();
FlatXmlDataSet.write(dataset, out);
System.out.println(out);
} catch (Exception e) {
e.printStackTrace();
}
}
}
这将为您提供单元格作为属性。如果您希望 XML 格式不同,请使用 XmlDataSet 而不是 FlatXmlDataSet。
我需要将 CSV 文件转换为相应的 XML 表示,如下所示:
CSV
header1;header2;header3
data1;data2;data3
data4;data5;data6
XML
<?xml version="1.0" encoding="UTF-8"?>
<root>
<row>
<header1>data1</header1>
<header2>data2</header2>
<header3>data3</header3>
</row>
<row>
<header1>data4</header1>
<header2>data5</header2>
<header3>data6</header3>
</row>
</root>
我发现这个工具正是我所需要的(虽然它是德语的):CSV2XML
它是用 Java 编写的,带有一个带有一点 Swing UI 的 .jar 文件。它在输入和输出格式方面也是可配置的。
最简单的方法是使用http://xmlgrid.net在线工具将 csv 或 Excel xls/xlsx 转换为 XML。转换后的 XML 将显示在 XML 网格编辑器中,允许您更改元素/属性名称、删除或添加行/列。
由于它是开源的,您应该会找到所需的灵活性。http://csv2xml.sourceforge.net/
我认为您正在寻找的是Microsoft LogParser。杰夫不久前发表了一篇关于它的文章。如果您需要,这里是论坛,但它非常简单。
我还没有尝试过,但看起来它可以解决您的问题。
祝你好运!
您可以使用 Elev.at ( http://elev.at ) 从 XLS 转换为 XML。它是一个免费的网络 API。
我有一个需要从 CSV 转换为 XML 的示例数据。这里有两个在线工具可以满足这一需求:
CSV
id,name
1,Roberta
2,Oliver
3,Shayna
输出 XML:
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<row><id>1</id><name>Roberta</name></row>
<row><id>2</id><name>Oliver</name></row>
<row><id>3</id><name>Shayna</name></row>
</root>
嗯..我正在寻找更多现成的工具,而不是真正用于编程目的,我在发布之前检查了这个http://csv2xml.sourceforge.net/但它缺乏我配置输出格式的灵活性,