我有一个XML文件
<?xml version="1.0" encoding="ISO-8859-1"?>
<Results>
<Row>
<COL1></COL1>
<COL2>25.00</COL2>
<COL3>2009-07-06 15:49:34.984</COL3>
<COL4>00001720</COL4>
</Row>
<Row>
<COL1>RJ</COL1>
<COL2>26.00</COL2>
<COL3>2009-07-06 16:04:16.156</COL3>
<COL4>00001729</COL4>
</Row>
<Row>
<COL1>SD</COL1>
<COL2>28.00</COL2>
<COL3>2009-07-06 16:05:04.375</COL3>
<COL4>00001721</COL4>
</Row>
</Results>
Run Code Online (Sandbox Code Playgroud)
我必须将此XML转换为CSV文件.我听说我们可以使用XSLT做这样的事情.我怎样才能在Java(有/没有XSLT)中做到这一点?
使用XSLT通常是个坏主意.使用Apache Commons Digester.这很容易使用 - 这是一个粗略的想法::
Digester digester = new Digester();
digester.addObjectCreate("Results/Row", MyRowHolder.class);
digester.addCallMethod("Results/Row/COL1","addCol", 0);
// Similarly for COL2, etc.
digester.parse("mydata.xml");
Run Code Online (Sandbox Code Playgroud)
这将创建一个MyRowHolder实例(这是您提供的类).这个类有一个addCol()方法,可以为每个方法调用<COLn>该标记的内容.
| 归档时间: |
|
| 查看次数: |
15226 次 |
| 最近记录: |