首页 > 解决方案 > java ObjectOutputStream 创建带有乱码数据的 csv 文件

问题描述

我有超过 300 个表要导出到 CSV 文件。但是我看到乱码数据。

我发送表名并使用 jdbctemplate 检索数据我可以看到数据但是当我导出时我看到乱码值

sr1org.springframework.util.LinkedCaseInsensitiveMapiEkMÑ=f$LcaseInsensitiveKeystLjava/util/HashMap

sr1org.springframework.util.LinkedCaseInsensitiveMapiEkMÑ=f$LcaseInsensitiveKeystLjava/util/HashMap

q~q~q~q~xq~sq~?@wq~sq~q~trivera92q~

下面是代码:

导出数据.java

public List getTableData(String tableName){
    return  jdbcTemplate.queryForList("select * FROM " + tableName + " LIMIT 10");
}

创建 csv 文件

@Autowired
ExportData exportData;

public void CreateCsvData(){
 
    String tableName = "user_details";
    String folderPath = "/tmp/Data/";

    List data = this.exportData.getTableData(tableName);

    try {
        FileOutputStream fis = new FileOutputStream(folderPath + tableName + ".csv",true);
        ObjectOutputStream os = new ObjectOutputStream(fis);
        for (int i = 0; i < data.size(); i++) {
            os.writeObject(data.get(i));
            os.close();
        }

    } catch (Exception ex) {
        ex.printStackTrace();
    }

}
       

这是 pom.xml

<dependencies>
    <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-jdbc -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
        <version>2.0.4.RELEASE</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>2.0.4.RELEASE</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.12</version>
    </dependency>
<dependencies>

我看到了很多例子,resultsetextractor但是RowMapper很难为 300 个表编写模型。

对不起这是我的错; 我确实遍历了对象忘记将其粘贴在这里;

标签: javaspringmaven

解决方案


推荐阅读