Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml Smooks,读取CSV,将第一条记录作为标题信息获取,并将其余记录作为记录处理_Xml_Csv_Split_Css Selectors_Smooks - Fatal编程技术网

Xml Smooks,读取CSV,将第一条记录作为标题信息获取,并将其余记录作为记录处理

Xml Smooks,读取CSV,将第一条记录作为标题信息获取,并将其余记录作为记录处理,xml,csv,split,css-selectors,smooks,Xml,Csv,Split,Css Selectors,Smooks,我陷入了这样一种情况:我必须读取一个CSV文件Smooks,并将其拆分为小的CSV或XML文件。我曾经尝试过将一个大的XML文件拆分并转换成另一种形式的XML对象,效果很好。但在本例中,我有一个类似于此的CSV文件 HEADER,val01,val02,,, LINE,lineVal01,lineVal02,lineVal03,lineVal04,lineVal05 LINE,lineVal01,lineVal02,lineVal03,lineVal04,lineVal05 LINE,lineV

我陷入了这样一种情况:我必须读取一个CSV文件Smooks,并将其拆分为小的CSV或XML文件。我曾经尝试过将一个大的XML文件拆分并转换成另一种形式的XML对象,效果很好。但在本例中,我有一个类似于此的CSV文件

HEADER,val01,val02,,,
LINE,lineVal01,lineVal02,lineVal03,lineVal04,lineVal05
LINE,lineVal01,lineVal02,lineVal03,lineVal04,lineVal05
LINE,lineVal01,lineVal02,lineVal03,lineVal04,lineVal05
LINE,lineVal01,lineVal02,lineVal03,lineVal04,lineVal05
在进行JavaBean绑定时,我需要单独读取这个头文件,并生成小的CSV/XML文件,这些文件表示包含头信息的每一行记录。 例如:


val01
val02
lineVal01
无能02
lineVal03
lineVal04
lineVal05
为了识别和使用所有输出对象中的第一个记录值,我应该做什么

我能把它读入JavaBean中吗

<jb:bean beanId="header" class="org.me.Header" createOnElement="csv-set/csv-record[0]">

感谢您的帮助


谢谢。

我不确定Smook是否在这篇文章中使用xpath表达式。但是,我还将尝试使用csv set/csv record[1]作为标题记录,使用csv set/csv record[position()>1]作为其余记录。我会保留这个问题,不编辑也不删除,这样以后其他人会发现这个问题很有用。csv set/csv record[1]很好用。但是csv集合/csv记录[position()>1]会抛出错误。显然,SAX不支持position():(
<jb:bean beanId="header" class="org.me.Header" createOnElement="csv-set/csv-record[0]">