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


阿黛尔|莱昂内尔·里奇|你好| 22865

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


在此,该行代表了拥有同一首歌曲的多位艺术家。
阿黛尔(Adele)和莱昂内尔·里奇(Lionel Richie)有一首叫“ Hello”的歌曲,其歌曲ID为22865。每行的列数始终为4

我需要解析此行以创建Song的2个对象

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


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


阿黛尔,你好和22865

莱昂内尔·里奇(Lionel Richie),你好和22865


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

最佳答案

请遵循文档中的准则:

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>

09-11 19:57