CSV文件阅读和书写格式的Java
当易于处理表格数据,CSV(逗号分隔值)格式是用来。以CSV,在每个元素用逗号分隔的数据代表
一个(","),因为它打破了数据行的换行符。
CSV数据是一般“的。csv”将被保存为一个文本文件的扩展名。除了文本,Microsoft
Excel电子表格也可以被解释为方便浏览和编辑,是经常使用。
在本文中,关于Java的CSV格式的数据时基本程序处理。作为一个例子,下面的CSV数据覆盖。这个数据,一个日本艺术家/显示死亡年龄在出生.
writers.csv
张三,1896,1933
李四,1900,1977
王五,1925,1970
要
加载CSV数据,核心API类和java.io.BufferedReader,java.util.StringTokenizer类与
(J2SE1.4您以后,StringTokenizer类,而是java.lang.String#分裂(弦乐)您还可以使用的方法。)我们
java.io输入和输出文件的封装类,StringTokenizer类会分裂为每个元素用逗号分隔的数据。下面的示例程序,请阅读制表符分隔的CSV
数据标准输出。
ReadCSV.java
package com.mark.csv;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class ReadCSV {
public static void main(String[] args) {
try {
File csv = new File("F:/writers.csv"); // CSV数据文件
BufferedReader br = new BufferedReader(new FileReader(csv));
// 要阅读的最后一行
while (br.ready()) {
String line = br.readLine();
// 数据元素分为一行
StringTokenizer st = new StringTokenizer(line, ",");
while (st.hasMoreTokens()) {
// 每个元素都显示在一个制表符分隔的线
System.out.print(st.nextToken() + "\t");
}
System.out.println();
}
br.close();
} catch (FileNotFoundException e) {
// File对象的创建过程中的异常捕获
e.printStackTrace();
} catch (IOException e) {
// BufferedReader在关闭对象捕捉异常
e.printStackTrace();
}
}
}
当从文件中读取数据,java.io.BufferedReader利用是一个基本的类。 java.io.FileReader加载数据类也是可能的,但每个字节读取效率。这一点,如果数据BufferedReader类,用于缓冲是通过阅读形成合力,可以有效地处理。
运行。
那么,现在将数据写入到CSV文件。出口,以及正常的数据输出到一个文件,java.io.BufferedWriter使用的类。在同一个数据元素之间用逗号连接,只写一个文件。下面的示例程序,CSV和添加行到文件的数据的末尾。
WriteCSV.java
package com.mark.csv;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
public class WriteCSV {
public static void main(String[] args) {
try {
File csv = new File("F:/writers.csv"); // CSV数据文件
BufferedWriter bw = new BufferedWriter(new FileWriter(csv, true)); // 附加
// 添加新的数据行
bw.write("\"水电sd费四大\"" + "," + "\"1988\"" + "," + "\"1992\"");
bw.newLine();
bw.close();
} catch (FileNotFoundException e) {
// File对象的创建过程中的异常捕获
e.printStackTrace();
} catch (IOException e) {
// BufferedWriter在关闭对象捕捉异常
e.printStackTrace();
}
}
}
导出到一个文件也,所以写一个更有效率,以及装载和缓冲,用来出口java.io.BufferedWriter类。