如何将Cell数据类型转换为String数据类型并将其存储在arrayList中

时间:2015-07-29 14:05:26

标签: java jxl

我是Java的新手。请指导我如何将Cell数据类型转换为字符串并将其存储在数组列表中并打印相同的内容。

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import jxl.Cell;
import jxl.LabelCell;
import jxl.NumberCell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
class ExcelReader {
    private Workbook workbook;
    private Sheet sheet;
    ArrayList<Cell> getRollNo=new ArrayList<Cell>();
    ArrayList<Cell> getName=new ArrayList<Cell>();
    ArrayList<Cell> getTotalMarks=new ArrayList<Cell>();
    public  void getExcelContents() throws BiffException, IOException
    {
        workbook= Workbook.getWorkbook(new File("C://Student_Record.xls"));
        sheet=workbook.getSheet(0);
        int rowLen=sheet.getRows();
        for(int i=1;i<rowLen;i++ )
        {
            getRollNo.add((Cell)sheet.getCell(1,i));//here how to convert  cell datatype to string ,store and print same using array list object
            getName.add((Cell)sheet.getCell(2,i));
            getTotalMarks.add((Cell)sheet.getCell(3,i));
            System.out.println(getRollNo);
        }
    }

}

1 个答案:

答案 0 :(得分:0)

getContents()方法构成jxl.Cell类应该做好自己的工作。它以字符串形式返回单元格的内容。

参考:http://jexcelapi.sourceforge.net/resources/javadocs/2_6_10/docs/jxl/Cell.html

如果要存储字符串,则需要将数组列表更改为String类型而不是Cell

ArrayList<String> getRollNo=new ArrayList<String>();

然后像这样在你的循环中添加数据

getRollNo.add((Cell)sheet.getCell(1,i)).getContents();

否则只保留您的ArrayList的Cell类型,当您想显示内容时,调用每个单元格对象上的getContents()方法

ArrayList<Cell> getRollNo=new ArrayList<Cell>();

getRollNo.add((Cell)sheet.getCell(1,i));

for(Cell c : getRollNo)
{
     System.out.println(c.getContents());
}