栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

使用Apache Commons CSV工具将List<Map<String,Object>>写入csv并保存

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Apache Commons CSV工具将List<Map<String,Object>>写入csv并保存

需求如题
源数据类型:List>或者List>
>类型的数据" />
想将这样的数据写入csv并保存到某个位置
方法:
借助Apache Commons CSV工具来转换

1、引入依赖


    org.apache.commons
    commons-csv
    1.9.0

2、list2csv函数
其中涉及到Apache Commons CSV的操作参考了https://www.baeldung.com/apache-commons-csv

public void list2csv(List> list,String pathName) throws IOException {
    List headerList = new ArrayList<>();
    for (String s : list.get(0).keySet()) {
        headerList.add(s);
    }
    String[] csvHeader = headerList.toArray(new String[headerList.size()]);

    FileWriter out = new FileWriter(pathName); //要写入的位置 如D:/test.csv
    try (CSVPrinter printer = new CSVPrinter(out, CSVFormat.DEFAULT
            .withHeader(csvHeader))) {
        for(Map map:list) {
            List valueList = new ArrayList<>();
            for(String s:headerList)
                valueList.add(map.get(s));
            String[] csvValue = valueList.toArray(new String[valueList.size()]);
            printer.printRecord(csvValue);
        }
    }
}

有更好的方法欢迎交流~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/703655.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号