title: Java操作Excel檔案
date: 2017-05-01 11:36:20
tags: Java
今天,我來教大家怎麼實現Java操作Excel檔案。
import java.io.File;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
/**
* @author HuangQinJian 上午11:04:58 2017年5月1日
*/
public class ExcelOperate {
public static void main(String[] args) {
Sheet sheet;
Workbook book;
Cell cell1, cell2, cell3, cell4, cell5;
JSONArray array = new JSONArray();
try {
// 為要讀取的excel檔名
book = Workbook.getWorkbook(new File("D://test.xls"));
// 獲得第一個工作表物件(ecxel中sheet的編號從0開始,0,1,2,3,....)
sheet = book.getSheet(0);
for (int i = 1; i < sheet.getRows(); i++) {
// 獲取每一行的單元格
cell1 = sheet.getCell(0, i);// (列,行)
cell2 = sheet.getCell(1, i);
cell3 = sheet.getCell(2, i);
cell4 = sheet.getCell(3, i);
cell5 = sheet.getCell(4, i);
if ("".equals(cell1.getContents())) {// 如果讀取的資料為空
break;
}
JSONObject object = new JSONObject();
object.put("ID", cell1.getContents());
object.put("編號", cell2.getContents());
object.put("姓名", cell3.getContents());
object.put("數量", cell4.getContents());
object.put("住址", cell5.getContents());
array.add(object);
}
System.out.println(array.toString());
book.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}複製程式碼
在這個過程中你可能會遇到一個錯誤,如下圖:
這是因為不支出讀取 excel 2007 檔案(.xlsx)。只支援 excel 2003 (.xls)。
輸入的資料格式:
輸出結果:
[{"編號":"11","姓名":"黃","住址":"遼寧","ID":"1","數量":"3"},{"編號":"22","姓名":"欽","住址":"大連","ID":"2","數量":"32"},{"編號":"33","姓名":"建","住址":"開發區","ID":"3","數量":"32"},{"編號":"44","姓名":"黃","住址":"軟體學院","ID":"4","數量":"32"},{"編號":"55","姓名":"欽建","住址":"大黑山","ID":"5","數量":"3232"}]
更多內容歡迎訪問我的個人主頁