1.CSV文件介绍
CSV是(Comma Separated Values,逗号分隔值)的英文缩写,通常都是纯文本文件。建议使用WORDPAD或是记事本(NOTE)来开启,再则先另存新档后用EXCEL开启,也是方法之一。其文件举例为:
1997,Ford,E350,"ac, abs, moon",3000.00
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""","",5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""","",5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!
2.Java CSV库的介绍
Javacsv是一个开源的小型的读写CSV文件、文本文件等的Java类库,其可以操作所以的CSV文件、文本文件、格式化的Excel文件等。其下载地址为http://sourceforge.net/projects/javacsv/?source=dlp
3.Java对于CSV文件的基本操作
- 打开MyEclipse,并创建Java工程;
- 下载javacsv jar包,并导入Java工程;
- 创建testCSV类,其具体内容如下所示:
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import com.csvreader.*;
public class testCSV {
public static void main(String[] args) throws IOException {
ReadCSV();
}
public static void ReadCSV() throws IOException
{
ArrayList<String[]> csvList = new ArrayList<String[]>();
String csvFilePath = "q.csv";
CsvReader reader = new CsvReader(csvFilePath,',',Charset.forName("GB2312")); //一般用这编码读就可以了
reader.readHeaders(); // 跳过表头 如果需要表头的话,不要写这句。
while(reader.readRecord()){ //逐行读入除表头的数据
csvList.add(reader.getValues());
}
reader.close();
for(int row=0;row<csvList.size();row++){
for(int col=0;col<csvList.get(row).length;col++){
String cell = csvList.get(row)[col]; //取得第row行第0列的数据
System.out.print(cell);
System.out.print("\t");
}
System.out.print("\n");
}
}
public static void WriteCSV() throws IOException
{
String csvFilePath = "q.csv";
CsvWriter wr =new CsvWriter(csvFilePath,',',Charset.forName("GB2312"));
String[] contents = {"aaaaa","bbbbb","cccccc","ddddddddd"};
wr.writeRecord(contents);
wr.close();
}
}
- 执行程序,效果如下图所示: