BeanIO:文件单行中有多个记录

时间:2019-05-13 22:50:37

标签: java fileparsing bean-io

我有一个多行(行)的文本文件,我正在尝试使用BeanIO读取。该文件如下所示:

  

Adele | Lionel Richie | Hello | 22865

     

Ed Sheeran |简单计划|一个| 11230

在此,该行代表多位歌手,他们的歌曲名称相同。 阿黛尔(Adele)和莱昂内尔·里奇(Lionel Richie)有一首叫做“ Hello”的歌曲,其歌曲ID为22865。每行的列数始终为4

我需要分析这一行以创建Song的2个对象

Class Song{
 String artistName;
 String songName;
 int songId;
}

上面的第一行必须提供2个Song对象:

  

阿黛尔(Adele),你好和22865

     

Lionel Richie,您好和22865

使用BeanIO可以实现吗?我已经使用BeanIO的定界符解析功能来解析,但是不确定如何获取单行的多个记录

1 个答案:

答案 0 :(得分:0)

遵循文档中的准则:

http://beanio.org/2.0/docs/reference/index.html#RecordGroups

Class Song{
 List<String> artistName;
 String songName;
 int songId;
}

通过这种方式,您可以拥有任意数量的艺术家

<record name="artistName" collection="list" >
...
</record>