我正在使用Super-CSV编写CSV文件,但是当我想要访问同时也是原始类属性的类中的属性时,我遇到了问题。
我会尝试更好地解释自己:
我让我们说类Car,它有一个属性Model,它有一个属性名称,在csv文件中,我写的是Car的属性,我想编写Model名称。
我写了以下内容:
ICsvBeanWriter beanWriter = null;
try {
beanWriter = new CsvBeanWriter(new FileWriter(file), CsvPreference.EXCEL_PREFERENCE);
String[] header = {"Plate Number", "Model"};
String[] properties = {"plateNumber", "model.name"};
CellProcessor[] processors = new CellProcessor[] {
new NotNull(); // plateNumber
new NotNull(); // model.name
};
beanWriter.writeHeader(header);
List<Car> cars = getCarList();
for (Car car: cars) {
beanWriter.write(car, properties, processors);
}
} catch(IOException ioe) {
// ...
}
但是当我运行它时,它抱怨“model.name”......我应该怎么做?我找到了一个解决方法,就是在Car类中编写一个“getModelName()”方法,并将该属性定义为“modelName”,但我不喜欢它......