java csv编程_java操作csv文件相关代码详解

import java.io.BufferedReader;

import java.io.FileReader;

import java.io.IOException;

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

/**

*

* JAVA 操作 excel 文档中的 .csv文件格式

*/

public class CsvOperateUtil {

private String filename = null;

private BufferedReader bufferedreader = null;

private List list =new ArrayList();

public CsvOperateUtil() {

}

public static void main(String[] args) throws IOException {

CsvOperateUtil test = new CsvOperateUtil();

test.testRun("C:/file2/B_F_DEP_SAE_CB_ACCT_TMP.csv");

}

public CsvOperateUtil(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().indexOf(",")>0) {

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 void testRun(String filename) throws IOException {

CsvOperateUtil cu = new CsvOperateUtil(filename);

for(int i=0;i

String ID = cu.getString(i,0);//得到第i行.第一列的数据.

String CODE = cu.getString(i,1);;//得到第i行.第二列的数据.

String NAME = cu.getString(i,2);;

String TEL = cu.getString(i,3);;

System.out.println("===ID:"+ID);

System.out.println("===CODE:"+CODE);

System.out.println("===NAME:"+NAME);

System.out.println("===TEL:"+TEL);

System.out.println(" ");

}

cu.CsvClose();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值