Java读取csv资料

Java读取csv文件
在http://hjxia.iteye.com上看到这篇文章,试了试,还好用,记录了下来
首先在http://ostermiller.org/utils/download.html 上下载com.Ostermiller.util cvs的jar包.
有了这个jar包就可以写个工具类,专门控制csv文件的读取操作.
具体代码如下:
package com.spr.csv;   
  
import java.io.IOException;   
import java.io.InputStream;   
  
import com.Ostermiller.util.ExcelCSVParser;   
import com.Ostermiller.util.LabeledCSVParser;   
  
public class CsvFileParser{    
  
    private LabeledCSVParser csvParser;//csvParser    
  
    private int currLineNum = -1;//The current line number for reading.    
  
    private String[] currLine = null;//The data of current line.   
       
  
    /*  
     *  Param: in InputStream   
     *  throws IOException  
     */     
  
    public CsvFileParser(InputStream in) throws IOException {   
           
            csvParser = new LabeledCSVParser(new ExcelCSVParser(in));   
            currLineNum = csvParser.getLastLineNumber();   
    }   
       
    /*  
     *  Get the titles of csv file.  
     *   
     *  return String[]  
     */  
    public String[] getTitles() throws IOException {   
        return csvParser.getLabels();   
    }   
                 
  
    /*  
     * Checkout whether it has more data.  
     *  
     * @return ture: has data,false nodata.  
     */  
    public boolean hasMore() throws IOException {   
        currLine = csvParser.getLine();   
        currLineNum = csvParser.getLastLineNumber();   
        if (null == currLine)   
            return false;   
        return true;   
    }    
  
    /*  
     * Get the data of filed by field name.  
     * param:String filedName  
     *   
     * @return:String   
     */  
    public String getByFieldName(String fieldName) {   
                  
        return csvParser.getValueByLabel(fieldName);   
    }    
  
    /*  
     * Close the parser.  
     *  
     *   
     */  
    public void close() throws IOException {   
        csvParser.close();    
  
    }    
  
    /*  
     * Read the current line.Return the data of current line.  
     *  
     * @return String[]   
     */  
    public String[] readLine() throws IOException {   
        currLine = csvParser.getLine();    
  
        currLineNum = csvParser.getLastLineNumber();    
  
        return currLine;   
    }    
       
    /*  
     * Get current line number.  
     *   
     * @return int  
     */  
    public int getCurrLineNum(){    
        return currLineNum;    
       
    }     
       
    /*  
     * Get the data of the current line.  
     *   
     * @return String[]  
     */  
    public String[] getCurrLine() {   
        return currLine;   
    }   
  
}