java csv读取

java csvreader
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class CsvReader {

private String filename = null;
private BufferedReader bufferedreader = null;
public List list = new ArrayList();

public CsvReader(String filename) throws IOException {
this.filename = filename;
bufferedreader
= new BufferedReader(new FileReader(filename));
String stemp;
while ((stemp = bufferedreader.readLine()) != null) {
list.add(stemp);
}
}

public List getList() throws IOException {
return list;
}

public int getRowNum() {
return list.size();
}

public int getColNum() {
if (!list.toString().equals("[]")) {
if (list.get(0).toString().contains(",")) {
return list.get(0).toString().split(",").length;
}
else if (list.get(0).toString().trim().length() != 0) {
return 1;
}
else {
return 0;
}
}
else {
return 0;
}
}

public String getRow(int index) {
if (this.list.size() != 0)
return (String) list.get(index);
else
return null;
}

public String getCol(int index) {
if (this.getColNum() == 0) {
return null;
}
StringBuffer scol
= new StringBuffer();
String temp
= null;
int colnum = this.getColNum();
if (colnum > 1) {
for (Iterator it = list.iterator(); it.hasNext();) {
temp
= it.next().toString();
scol
= scol.append(temp.split(",")[index] + ",");
}
}
else {
for (Iterator it = list.iterator(); it.hasNext();) {
temp
= it.next().toString();
scol
= scol.append(temp + ",");
}
}
String str
= new String(scol.toString());
str
= str.substring(0, str.length() - 1);
return str;
}

public String getString(int row, int col) {
String temp
= null;
int colnum = this.getColNum();
if (colnum > 1) {
temp
= list.get(row).toString().split(",")[col];
}
else if (colnum == 1) {
temp
= list.get(row).toString();
}
else {
temp
= null;
}
return temp;
}

public void CsvClose() throws IOException {
this.bufferedreader.close();
}

public static void main(String[] args) throws IOException {
CsvReader cu
= new CsvReader("E:/temp1/data1/test1.csv");

for (int i = 0; i < cu.getRowNum(); i++) {
String ID
= cu.getString(i, 0);
String NAME
= cu.getString(i, 1);
System.out.println(
"===ID:" + ID);
System.out.println(
"===NAME:" + NAME);
System.out.println(
" ");
}

cu.CsvClose();
}
}

原文地址:https://www.cnblogs.com/myparamita/p/1903501.html