我們使用OpenCSV將CSV文件映射到Java Bean。我想將所有字符串值映射到Java bean,並將其設置爲最大值。
假設CSV包含以下行將所有字符串字段更改爲大寫
abc, 123, def, 123abc
而將其映射到豆它應該被轉換
ABC, 123, DEF, 123abc
我可以與反射去,並具有所期望的結果。但是在尋找通過OpenCSV或溶液Apache Bean Utils或任何其他類似的庫,將所有字符串字段從一個bean轉換爲大寫?
我們使用OpenCSV將CSV文件映射到Java Bean。我想將所有字符串值映射到Java bean,並將其設置爲最大值。
假設CSV包含以下行將所有字符串字段更改爲大寫
abc, 123, def, 123abc
而將其映射到豆它應該被轉換
ABC, 123, DEF, 123abc
我可以與反射去,並具有所期望的結果。但是在尋找通過OpenCSV或溶液Apache Bean Utils或任何其他類似的庫,將所有字符串字段從一個bean轉換爲大寫?
使用覆蓋CsvToBean
實現:
CsvToBean<BeanType> csv2Bean = new CsvToBean<BeanType>() {
@Override
protected Object convertValue(String value, PropertyDescriptor prop) {
return super.convertValue(value.toUpperCase(), prop);
}
};
List<BeanType> beanList = csv2Bean.parse(mappingStrategy, csvReader);
if (StringUtils.isAlpha(value))
{
System.out.print("With uppercase " + StringUtils.upperCase(value));
}
else // with number or anything with the word
{
System.out.print("Without uppercase " + value);
}
或
System.out.println(""+(StringUtils.isAlpha(value) ? StringUtils.upperCase(value) : value));
如前所述,我會不喜歡自己做。 – xyz
看起來不錯讓我試試.. – xyz
工作就像一個魅力:) – xyz
@Karna高興地幫助:) –