Java 使用BeanToCsv在OpenCSV中自定义列名

Java 使用BeanToCsv在OpenCSV中自定义列名,java,opencsv,Java,Opencsv,我正在使用OpenCSV BeanToCsv将bean列表转储到csv文件中。一切正常,但是它从我正在使用的bean中的字段名创建列名。如何更改在csv中创建的列名 列映射示例: 必须有一些显而易见的简单方法来做到这一点,但我就是看不到。我如何做到这一点?有帮助吗?我看不出来。你确定吗?该链接引用了一个类,该类“通过允许用户将列名映射传递给bean名来扩展HeaderColumnNameMappingStrategy。这样,bean中的字段就不必与csv文件中的字段相匹配。”好的,看起来有点像黑

我正在使用OpenCSV BeanToCsv将bean列表转储到csv文件中。一切正常,但是它从我正在使用的bean中的字段名创建列名。如何更改在csv中创建的列名

列映射示例:


必须有一些显而易见的简单方法来做到这一点,但我就是看不到。我如何做到这一点?

有帮助吗?我看不出来。你确定吗?该链接引用了一个类,该类“通过允许用户将列名映射传递给bean名来扩展HeaderColumnNameMappingStrategy。这样,bean中的字段就不必与csv文件中的字段相匹配。”好的,看起来有点像黑客,但我已经开始了。如果没有现成的方法,我真的很惊讶。听起来不错。想发布一些示例代码吗?有用吗?我看不出来。你确定吗?该链接引用了一个类,该类“通过允许用户将列名映射传递给bean名来扩展HeaderColumnNameMappingStrategy。这样,bean中的字段就不必与csv文件中的字段相匹配。”好的,看起来有点像黑客,但我已经开始了。如果没有现成的方法,我真的很惊讶。听起来不错。想发布一些示例代码吗?
String[] columns = new String[] { "projectId", "patientFirstName", "patientLastName"};

//But I actually want the column for projectId to be "PROJECT_ID" in the
//.csv file and patientFirstName to be "PATIENT_FIRST_NAME".