java导出excel float_【Java】导入导出Excel表格
1、將excel導入到內存
1、 調用工作簿Workbook的靜態方法getWorkbook(),獲得工作簿Workbook對象
InputStream in = new FileInputStream(file);
Workbook wb = Workbook.getWorkbook(in);
2、 獲取Excel表中的工作表格Sheet
3、 獲取行、列
sheet.getRows();
sheet.getColumns();
4、 讀取單元格內容
String result = cell.getContents();
5、 關閉工作簿Workbook
wb.close();
代碼演示
// 實現讀學生文件,將讀出的信息存放于student集合中
public List ReadFromExcel(String fileName) {
List list = new ArrayList();
File file = new File(fileName);
try {
InputStream in = new FileInputStream(file);
Workbook wb = Workbook.getWorkbook(in);
Sheet s = wb.getSheet(0);
for(int i = 1; i < s.getRows(); i++) //第一行不要
{
Cell[] row = s.getRow(i);
Student student = new Student(row[0].getContents(), row[1].getContents(), //填充數據
row[2].getContents(), Float.parseFloat(row[3].getContents()),
Float.parseFloat(row[4].getContents()), Float.parseFloat(row[5].getContents()));
//由于讀取的數據全部都是String 類型所以要轉換成Float類型
student.setTotalScore(student.getEnglish()+student.getJava()+student.getMath());
student.setAverage(student.getTotalScore()/3);
list.add(student);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BiffException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
2、將數據寫到excel表格中
1、 獲取可寫入工作簿WritableWorkbook對象
WritableWorkbook wwb = Workbook.createWorkbook(filename);
2、 創建工作表格Sheet名稱
WritableSheet sheet = book.createSheet("Sheet1",0);
3、 將內容放入對應的行和列
sheet.addCell(new Label(j, i, info);//j表示列,i表示行,info表示寫入的內容
//在Excel中第一個參數是列,第二個參數是行,如A1
4、 寫入并關閉工作簿Workbook
wwb.write();
wwb.close();
代碼演示
// 將集合中的數據寫入到excel文件中
public void WriteExcel(List list, String fileName) {
File file = new File(fileName);
try {
OutputStream out = new FileOutputStream(file);
WritableWorkbook wwb = Workbook.createWorkbook(out);
WritableSheet ws = wwb.createSheet("Sheet1", 0);
String info[] = {"id","name","gender","java","english","math"};
for(int j=0;j<6;j++){
Label label = new Label(j, 0, info[j]);
ws.addCell(label);
}
for(int i = 0;i < list.size();i++)
{
Label l = new Label(0, i+1, list.get(i).getId());//在Excel中,第一個參數表示列,第二個表示行
Label l2 = new Label(1, i+1, list.get(i).getName());
Label l3 = new Label(2, i+1, list.get(i).getGender());
Label l4 = new Label(3, i+1, String.valueOf(list.get(i).getJava()));
Label l5 = new Label(4, i+1, String.valueOf(list.get(i).getEnglish()));
Label l6 = new Label(5, i+1, String.valueOf(list.get(i).getMath()));
ws.addCell(l);
ws.addCell(l2);
ws.addCell(l3);
ws.addCell(l4);
ws.addCell(l5);
ws.addCell(l6);
}
wwb.write();//從內存中寫入文件中
wwb.close();//關閉資源,釋放內存
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RowsExceededException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (WriteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
總結
以上是生活随笔為你收集整理的java导出excel float_【Java】导入导出Excel表格的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux用户与用户组
- 下一篇: linux怎么修改bash,Linux操