`

java操作csv

阅读更多
package com.mark.csv  
/** 
* 读取CSV文件 
*/ 
public void  readeCsv(){  
    try {      
           
        ArrayList<String[]> csvList = new ArrayList<String[]>(); //用来保存数据  
        String csvFilePath = "c:/test.csv";  
         CsvReader reader = new CsvReader(csvFilePath,',',Charset.forName("SJIS"));    //一般用这编码读就可以了      
           
         reader.readHeaders(); // 跳过表头   如果需要表头的话,不要写这句。  
           
         while(reader.readRecord()){ //逐行读入除表头的数据      
             csvList.add(reader.getValues());  
         }              
         reader.close();  
           
         for(int row=0;row<csvList.size();row++){  
               
             String  cell = csvList.get(row)[0]; //取得第row行第0列的数据  
             System.out.println(cell);  
               
         }  
           
           
    }catch(Exception ex){  
        System.out.println(ex);  
    }  
}  
 
/** 
* 写入CSV文件 
*/ 
public void writeCsv(){  
    try {  
          
        String csvFilePath = "c:/test.csv";  
         CsvWriter wr =new CsvWriter(csvFilePath,',',Charset.forName("SJIS"));  
         String[] contents = {"aaaaa","bbbbb","cccccc","ddddddddd"};                      
         wr.writeRecord(contents);  
         wr.close();  
     } catch (IOException e) {  
        e.printStackTrace();  
     }  


###################################3
java操作csv文件(2008-08-27 10:32:35)转载标签: java读取操作excelcsv格式it 分类: JAVA 
这里写一写用java怎么读取excel中csv格式的文件。下面是一个例子。


//JAVA 操作 excel 中的 .csv文件格式
public class CsvUtil {

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

  public CsvUtil(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;
  }

//得到csv文件的行数
  public int getRowNum(){
      return list.size();
  }
  //得到csv文件的列数
    public int getColNum(){
      if(!list.toString().equals("[]")) {
         if(list.get(0).toString().contains(",")) {   //csv文件中,每列之间的是用','来分隔的
              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 run(String filename) throws IOException {
      CsvUtil cu = new CsvUtil(filename);
      for(int i=0;i<cu.getRowNum();i++){
        
       String name = cu.getString(i,0);//得到第i行.第一列的数据.
          String email = cu.getString(i,1);//得到第i行.第二列的数据.
          String tel = cu.getString(i,2);
          String number = cu.getString(i,3);
        
          System.out.println("===name:"+name);
          System.out.println("===email:"+email);
          System.out.println("===tel:"+tel);
          System.out.println("===number:"+number);
          System.out.println(" ");
     }
     cu.CsvClose();
  }

  public static void main(String[] args) throws IOException {
      CsvUtil test = new CsvUtil();
      test.run("D:/alpha/abc.csv");
  }
}
分享到:
评论

相关推荐

    java操作CSV文件

    ### Java操作CSV文件知识点 #### 一、简介与背景 在日常的数据处理工作中,CSV(Comma-Separated Values)文件是一种常见的数据交换格式。它简单易用且跨平台兼容性好,常被用于导入导出数据、数据分析等场景。在...

    Java操作csv文件

    总结,Java操作CSV文件涉及导入合适的库、读取与写入数据、处理记录和列,以及错误处理等多个环节。Apache Commons CSV库提供了一套完整的工具,使这些任务变得简单易行。在实际开发中,理解并熟练运用这些知识,能...

    java操作csv文件(读、写)

    在做项目的时候,发现使用POI无法解析以csv文件结尾的文件,虽然csv文件能用Excel打开,但是csv文件没有像Excel一样有规定的电子表格形式,故使用POI无法解析csv文件,在网上找了一下,发现java有提供java csv文件来...

    java操作csv文件

    ### Java操作CSV文件知识点 #### 一、简介 在日常开发工作中,经常需要处理各种格式的数据文件,其中CSV(逗号分隔值)文件是一种常见的数据存储格式。它以纯文本形式存储表格数据,每行表示一个数据记录,每个...

    java操作csv文件的Demo

    在Java编程中,CSV(Comma Separated Values)文件是一种常见的数据存储格式,它以逗号分隔每一列的数据,简单易用且适用于各种场景。本教程将介绍如何使用javaCSV.jar库来读取和写入CSV文件。如果你对这个话题已经...

    java操作CSV的官方jar包

    其中一个知名的库就是`javacsv`,它提供了方便的API来操作CSV数据。 `javacsv`是一个开源项目,由David Beites创建,它提供了一组简单的Java类,使得开发者可以方便地读取和写入CSV文件。`javacsv`库主要包含两个...

    java操作CSV文件类文件

    import java.io.FileNotFoundException; import java.nio.charset.Charset; import java.util.ArrayList; import java.util.List; import com.csvreader.CsvReader; public class Test { /** * @param args *...

    Java 操作CSV文件类

    解析CSV文件并已列表的方式显示在网页上 CSV是一种结构化的文本文件,可以看做是二维表,构成规则如下:每一行(“\r\n”标志行结束)对应表格的一行,不同列之间使用逗号分隔;如果列内容中包含逗号,则使用双引号将...

    java对csv文件进行读写操作

    下面我们将详细探讨如何使用Java和`javacsv`库对CSV文件进行读写操作。 **1. 添加javacsv依赖** 在进行读写操作前,你需要将`javacsv.jar`添加到项目类路径中。如果是Maven项目,可以将依赖项添加到pom.xml文件中...

    java读写csv文件,中文乱码问题

    在Java编程中,CSV(Comma Separated Values)文件是一种常用的格式,用于存储表格数据,如电子表格或数据库。在处理CSV文件时,尤其是涉及中文字符时,可能会遇到乱码问题。这个问题通常与字符编码设置有关。下面...

    javacsv_CsvReader:解析CSV文件

    理解并熟练运用`javacsv_CsvReader`可以帮助开发者更高效地处理CSV文件,实现数据的读取、解析和转换,为各种数据操作任务提供便利。在处理大量数据时,正确使用CSV读取库可以极大地提高代码的可读性和效率。

    java使用javacsv读取csv文件 导入Mysql数据库

    在Java编程中,将CSV(逗号分隔值)文件的数据导入到MySQL数据库是一项常见的任务。这个过程涉及几个关键步骤,包括读取CSV文件、解析数据、建立与数据库的连接以及执行SQL插入语句。本篇文章将详细讲解如何使用java...

    Java读写CSV之SuperCSV

    这篇博客"Java读写CSV之SuperCSV"可能详细讲解了如何利用SuperCSV库进行CSV操作。 首先,SuperCSV库不仅支持基本的数据类型,还支持JavaBean、Pojo和Map等复杂的数据结构,这使得数据的读取和写入更为方便。例如,...

    java csv操作实例

    首先,Java标准库并未提供内置的CSV处理功能,但有第三方库如Apache Commons CSV、OpenCSV和Super CSV等可以帮助我们轻松地进行CSV操作。这里我们以Apache Commons CSV为例,它提供了一个强大的CSV解析器和生成器。 ...

    Java解析CSV文件

    在IT行业中,CSV(Comma Separated Values)文件是一种广泛使用的数据交换格式,因其简单性和通用性而受到青睐。在Java编程中,处理CSV文件是一项常见...通过理解这些基本概念和方法,你可以有效地处理和操作CSV文件。

    JAVA操作csv文件(导入导出)-附件资源

    JAVA操作csv文件(导入导出)-附件资源

    java 导出csv文件并上传sftp

    JSCH是Java Secure Channel的一个实现,它允许Java应用程序进行安全的SSH连接,包括SFTP操作。 1. 添加依赖:在你的项目中引入JSCH库,如果是Maven,可在pom.xml中添加: ```xml &lt;groupId&gt;com.jcraft&lt;/groupId&gt; ...

Global site tag (gtag.js) - Google Analytics