我试图使用univocity解析器将csv文件解析为bean的新实例和现有实例。csv是通过使用univocity BeanWriterProcessor生成的,对于我将称为set a的一组bean。
现在我想读回csv,执行以下操作:
案例1:如果行对应于最初出现在集合a中的一个bean,我不想创建一个新的bean实例,而是将csv读入“现有”实例。(即,“更新”实例)。我通过使用bean的UUID来检查存在性。
案例2:如果行与集合a中最初存在的bean不对应,我想为它创建一个新的bean实例。
我想解决的问题是:对于案例1,如何向现有的bean实例写入数据?
在supercsv中,我可以这样做:
beanReader.read(targetExistingBean, header, processors);
在大学里我该怎么做?
目前,唯一的方法是重写BeanProcessor
或BeanListProcessor
的createBean
方法(以您使用的为准):
BeanListProcessor<Car> carProcessor = new BeanListProcessor<Car>(Car.class){
@Override
public Car createBean(String[] row, Context context) {
//analyze the row here to determine whether to return an existing instance
//if you need a new instance, call super.createBean(row, context);
}
};
希望这有帮助。
是否可以根据索引范围将一行解析为多个bean 例: 行:“字段1”、“字段2”、“字段3”。。。。,“字段9”
我正在为我的一个项目评估Univocity解析器,固定宽度平面文件格式从三个细节记录(例如,以AA、BB、CC开头)生成一个记录(Bean)——这个文件可以使用Univocity解析吗 我可以使用继续阅读并添加一些自定义转换,但是是否有现成的? 更新: 可以使用:?
我正在尝试从GTFS读取CSV文件。在uniVocity解析器的帮助下压缩,遇到了一个我无法解决的问题。出于某种原因,某些CSV文件的第一列似乎无法正确解析。例如,在“stops.txt”文件中,如下所示: 无法正确解析“stop_id”字段,该字段的值为“null” 这是我用来读取文件的方法: 这就是我的Stop课程的样子: 如果我调用的方法,我得到这个输出是不正确的: 输出: 有人知道为什么会
我读过以下关于csv解析的留档http://gatling.io/docs/2.0.1/session/feeder.html#feeder 我仍然无法捕获以下实现: 如何在Scala中创建变量,代表csv文件中的每一列 如果有两个用户按顺序运行,Gatling如何为这两个用户解析CSV文件?在第一个值被解析后,它会自动查找下一个值吗 我想要达到的目标是: > Gatling读取包含SIM序列号和
我必须解析一个csv文件,并将其内容转储到mysql表中。 第一输出 在第二个输出中,我需要自定义标头水平对齐。例如 对于第二个输出,它可以是我选择的任何一组标题。然后,我可以使用load data infile将这两个输出数据加载到mysql表中。正在寻找awk脚本来实现这一点。如果你还需要什么,请告诉我。德克萨斯州。