java – 在OpenCSV中使用captureHeader
作者:互联网
也许我不理解OpenCSV中的captureHeader()方法是什么,但该方法抓取CSV文件的头并将受保护的’header’变量设置为这些值的String数组.
但是那么如何访问这些标题值以尝试匹配从csv中的“first_name”到Bean中的“firstName”?想法是在实际解析完整的csv文件之前从这些头创建MappingStrategy.但是captureHeader()是一个空格而且’header’受到保护?
解决方法:
您需要实现captureHeader方法并将string []标头存储在列表中.您现在可以遍历此列表并根据您的bean进行映射.
例:
public void captureHeader(CSVReader reader){
super.captureHeader(reader);
List<String> csvHeader = Arrays.asList(header);
//iterate through the list
}
您也可以使用HeaderColumnNameTranslateMappingStrategy完成任务.请参阅我的答案here.
标签:opencsv,java 来源: https://codeday.me/bug/20190901/1780413.html