加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

JAVA导出成CSV文件

发布时间:2020-12-15 00:15:50 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 import java.io.File;import java.io.IOException;import java.util.List;import com.google.common.base.Charsets;import com.google.common.base.Jo

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

import java.io.File;
import java.io.IOException;
import java.util.List;

import com.google.common.base.Charsets;
import com.google.common.base.Joiner;
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import com.google.common.io.Files;
import com.google.common.primitives.Bytes;

public class FooUtilsCsvHelper {

    // csv's default delemiter is ','
    private final static String DEFAULT_DELIMITER = ",";
    // Mark a new line
    private final static String DEFAULT_END = "rn";
    // If you do not want a UTF-8,just replace the byte array.
    private final static byte commonCsvHead[] = { (byte) 0xEF,(byte) 0xBB,(byte) 0xBF };

    /**
     * Write source to a csv file
     * 
     * @param source
     * @throws IOException
     */
    public static void writeCsv(List<List<String>> source) throws IOException {
        // Aoid java.lang.NullPointerException
        Preconditions.checkNotNull(source);
        StringBuilder sbBuilder = new StringBuilder();
        for (List<String> list : source) {
            sbBuilder.append(Joiner.on(DEFAULT_DELIMITER).join(list)).append(
                    DEFAULT_END);
        }
        Files.write(Bytes.concat(commonCsvHead,sbBuilder.toString().getBytes(Charsets.UTF_8.toString())),new File("d:/123.csv"));
    }

    /**
     * Simple read a csv file
     * 
     * @param file
     * @throws IOException
     */
    public static void readCsv(File file) throws IOException {
        System.out.println(Files.readFirstLine(file,Charsets.UTF_8));
    }

    // Run a small test yourself.
    public static void main(String[] args) throws IOException {
        List<List<String>> source = Lists.newArrayList();
        List<String> tmpL = Lists.newArrayList();
        tmpL.add("测试titile1");
        tmpL.add("测试titile2");
        source.add(tmpL);
        writeCsv(source);
        readCsv(new File("d:/123.csv"));
    }
}

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读