java读取csv文件

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

CSV其实就是COMMA SEPARATED VALUE的缩写。
在开发中用Java操作csv文件有专门的的API叫javacsv.jar 

javacsv.jar下载地址: 
http://sourceforge.net/project/showfiles.php?group_id=33066

import java.io.IOException;   
import java.nio.charset.Charset;   
import java.util.ArrayList;   
import java.util.List;   
   
import com.csvreader.CsvReader;   
import com.csvreader.CsvWriter;   
import com.syc.test.DAO.ConnectionDB;   
import com.syc.test.bean.ReslutBean;   
   
public class Java2CSV {   
    /**  
     * @param args  
     * @throws Exception  
     */  
    public static void main(String[] args) throws Exception {   
        // 从获取将要写入csv文件的结果集   
        List<ReslutBean> list = new ArrayList<ReslutBean>();   
        list = ConnectionDB.querySQL();   
   
        // 预组装csv文件内容标题行   
        String[][] data = new String[list.size() + 1][2];   
        data[0][0] = "Help_keyword_id";   
        data[0][1] = "Name";   
   
        // 预组装csv文件内容   
        int len = list.size();   
        for (int i = 0; i < len; i++) {   
            data[i + 1][0] = list.get(i).getHelp_keyword_id();   
            data[i + 1][1] = list.get(i).getName();   
        }   
   
        writerCsv("e://c测试.csv", data);   
        readerCsv("e://c测试.csv");   
    }   
   
    /**  
     * 读取csv  
     *   
     * @param csvFilePath  
     * @throws Exception  
     */  
    public static void readerCsv(String csvFilePath) throws Exception {   
   
        CsvReader reader = new CsvReader(csvFilePath, ',',   
                Charset.forName("GBK"));// shift_jis日语字体,utf-8  
        reader.readHeaders();   
        String[] headers = reader.getHeaders();   
   
        List<Object[]> list = new ArrayList<Object[]>();   
        while (reader.readRecord()) {   
            list.add(reader.getValues());   
        }   
        Object[][] datas = new String[list.size()][];   
        for (int i = 0; i < list.size(); i++) {   
            datas[i] = list.get(i);   
        }   
   
        /*  
         * 以下输出  
         */  
   
        for (int i = 0; i < headers.length; i++) {   
            System.out.print(headers[i] + "\t");   
        }   
        System.out.println("");   
   
        for (int i = 0; i < datas.length; i++) {   
            Object[] data = datas[i]; // 取出一组数据  
            for (int j = 0; j < data.length; j++) {   
                Object cell = data[j];   
                System.out.print(cell + "\t");   
            }   
            System.out.println("");   
        }   
    }   
    }

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:php简单验证码的制作

下一篇:PHP 常用的header头部定义