Java POI JSON陣列轉EXCEL
阿新 • • 發佈:2018-12-18
JSON陣列轉EXCEL,自定義動態生成表頭
public static void createExcel(String[] heads,JSONArray jsonArray ,String uploadFileName) {
SXSSFWorkbook workbook = new SXSSFWorkbook();// 建立一個Excel檔案
SXSSFSheet sheet = workbook.createSheet();// 建立一個Excel的Sheet
SXSSFRow titleRow = sheet.createRow(0);//建立表頭
for(int i=0;i<heads.length;i++){//表頭賦值
titleRow.createCell(i).setCellValue(heads[i]);
}
if (jsonArray.size() > 0) {//單元格賦值
for (int i = 0; i < jsonArray.size(); i++) {
SXSSFRow row = sheet.createRow(i + 1);
JSONObject json = jsonArray.getJSONObject(i); // 遍歷 jsonarray
for(int j=0;j<heads.length;j++){
row.createCell(j).setCellValue(json.get(heads[j]).toString());//賦值
}
}
}
try {
// FileOutputStream fos = new FileOutputStream("D://ss.xls");
// workbook.write(fos);
// fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// public static void main(String[] args) { // String jsonStr = "[{\"NoPartySubIDs\":\"1\",\"ID\":\"齊商銀行股份有限公司\",\"Typ\":\"124\"},{\"NoPartySubIDs\":\"2\",\"ID\":\"齊商銀行\",\"Typ\":\"125\"}]"; // JSONArray json = JSONArray.fromObject(jsonStr); // String[] heads={"NoPartySubIDs","ID","Typ"}; // JSONConvertExcel s = new JSONConvertExcel(); // s.createExcel(heads,json,"債券"); // }