欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

JAVA生成CSV文件,解决中文乱码问题,javacsv,[Java]代码impo

来源: javaer 分享于  点击 35087 次 点评:36

JAVA生成CSV文件,解决中文乱码问题,javacsv,[Java]代码impo


[Java]代码

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 = "\r\n";    // 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"));    }}
相关栏目:

用户点评