将.csv文件转换为xml或json时保留层次结构

时间:2009-05-29 11:23:46

标签: csv jaxp

我有一个关于将数据从CSV转换为XML或JSON的问题,其中必须保留数据的层次结构。

例如,如果我有这样的CSV数据:

type,brand,country,quantity
apple,golden_delicious,english,1
apple,golden_delicious,french,2
apple,cox,,4
apple,braeburn,,1
banana,,carribean,6
banana,,central_america,7
clememtine,,,3

我想要的是保留XML中的层次结构,以便得到类似的内容:

<fruit>
<type = "apple">
<brand = "golden_delicious">
<country = "english" quantity =  "1">
<country = "french" quantity =  "2">
</brand>
<brand = "cox">
<quantity =  "4">
</brand>
<brand = "braeburn">
<quantity =  "1">
</brand>
</type>
<type = "banana">
<country = "carribean" quantity =  "6">
<country = "central_america" quantity =  "7">
</type>
<type = "clementine">
<quantity =  "3">
</type>
<fruit />

最好尝试使用JAXP或将上述内容简单地转换为父表,子表,然后将数据写入字符串数组进行处理,?像这样:

parent,child 
fruit,apple
apple,golden_delicious
golden_delicious,english
golden_delicious,french
english,1
french,2
apple,cox
cox,4
apple,braeburn
braeburn,1

等等。

或者有更好的方法吗?

由于

西蒙莱文森

1 个答案:

答案 0 :(得分:1)

如果csv没有按顺序排序会怎么样?

无论如何,在尝试解析csv文件时,请使用:http://www.codeproject.com/KB/database/CsvReader.aspx

它非常快速且易于使用

[R