CSV其实就是COMMA SEPARATED VALUE的缩写。
在开发中用Java操作csv文件有专门的的API叫javacsv.jar
javacsv.jar下载地址:
http://sourceforge.net/project/showfiles.php?group_id=33066
package com.syc.test.javaCSV;
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 list = new ArrayList();
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
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 list = new ArrayList();
while (reader.readRecord()) {
list.add(reader.getValues());
}
Object[][] datas = new String[list.size()][];
for (int i = 0; i
datas[i] = list.get(i);
}
/*
* 以下输出
*/
for (int i = 0; i
System.out.print(headers[i] + "\t");
}
System.out.println("");
for (int i = 0; i
Object[] data = datas[i]; // 取出一组数据
for (int j = 0; j
Object cell = data[j];
System.out.print(cell + "\t");
}
System.out.println("");
}
}
}