Java Gen Excel ด้วย POI ขอตัวอย่าง ง่ายๆ ครับ  สร้างคำถาม

 2,682 view  หมวดหมู่ : สำหรับโปรแกรมเมอร์  วันที่สร้าง : 07/04/2019

Java Gen Excel ด้วย POI ขอตัวอย่าง ง่ายๆ ครับ

Apache POI ถือว่าเป็น Library ที่ใช้ในการ Read , Write Excel ด้วย ภาษา Java
ที่นิยมใช้กันมากที่สุด

ตัวอย่างง่ายๆ สำหรับการ Write file

HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("Sample sheet");
Map data = new TreeMap();
data.put("1", new Object[] {"Code ID", "Emp Name", "Salary","Birth day"});
data.put("2", new Object[] {1d, "Somchai", 25000d,new Date()});
data.put("3", new Object[] {2d, "Samsanv", 30000d,new Date()});
data.put("4", new Object[] {3d, "Looktao", 53000d,new Date()});

CreationHelper createHelper = workbook.getCreationHelper();
HSSFFont font = workbook.createFont();
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
font.setFontHeightInPoints((short)24);
font.setFontName("Courier New");
font.setItalic(true);
font.setStrikeout(true);

HSSFCellStyle hstyle = workbook.createCellStyle();
hstyle.setFont(font);
hstyle.setAlignment(CellStyle.ALIGN_CENTER);


hstyle.setBorderBottom(CellStyle.BORDER_THIN);
hstyle.setBottomBorderColor(IndexedColors.BLACK.getIndex());
hstyle.setBorderLeft(CellStyle.BORDER_THIN);
hstyle.setLeftBorderColor(IndexedColors.GREEN.getIndex());
hstyle.setBorderRight(CellStyle.BORDER_THIN);
hstyle.setRightBorderColor(IndexedColors.BLUE.getIndex());
hstyle.setBorderTop(CellStyle.BORDER_MEDIUM_DASHED);
hstyle.setTopBorderColor(IndexedColors.BLACK.getIndex());

hstyle.setFillForegroundColor(IndexedColors.ORANGE.getIndex());
hstyle.setFillPattern(CellStyle.SOLID_FOREGROUND);

Set keyset = data.keySet();
int rownum = 0;
for (String key : keyset) {
Row row = sheet.createRow(rownum++);
Object [] objArr = data.get(key);
int cellnum = 0;
for (Object obj : objArr) {
Cell cell = row.createCell(cellnum++);
if(rownum==1){
cell.setCellStyle(hstyle);
}
if(obj instanceof Date){
cell.setCellValue((Date)obj);
CellStyle cellStyle = workbook.createCellStyle();
cellStyle.setDataFormat(createHelper.createDataFormat().getFormat("m/d/yy h:mm"));
cell.setCellStyle(cellStyle);
} else if(obj instanceof Boolean)
cell.setCellValue((Boolean)obj);
else if(obj instanceof String)
cell.setCellValue((String)obj);
else if(obj instanceof Double)
cell.setCellValue((Double)obj);
}
}

try {
FileOutputStream out =
new FileOutputStream(new File("C:\\new.xls"));
workbook.write(out);
out.close();
System.out.println("Excel written successfully..");

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}


ถ้าชอบบทความนี้ กด Like เลย :Java Gen Excel ด้วย POI ขอตัวอย่าง ง่ายๆ ครับ
TAGS : Java   Apache poi   Programming   โปรแกรมมิ่ง   excel  
 2,682 view  หมวดหมู่ : สำหรับโปรแกรมเมอร์  วันที่สร้าง : 07/04/2019



SOA,Java,XSLT

 ร่วมแสดงความคิดเห็นได้ที่นี่

#1.    ปูน
@ ถ้าอยากให้ ความกว้างแบบอัตโนมัติ ทำไงครับ

...............................................
#2.    เอก
@ ปูน
ใช้คำสั่งนี้ครับ
sheet.autoSizeColumn(0);

...............................................



× แจ้งเตือน! เราสนับสนุนทุกความคิดเห็น ที่ ใช้ถ้อยคำสุภาพ ไม่ละเมิดผู้อื่น ไม่ก่อให้เกิดความขัดแย้ง

เนื้อหาที่เกี่ยวช้อง

  Oracle SQL การใช้ left join เพื่อแก้ปัญหา Data มีไม่ครบทุก Table ถามเมื่อ (2015-08-23)   2,112 views  (ดูล่าสุดเมื่อ 8 นาที)

  เกย้เ ถามเมื่อ (2011-12-21)   2,871 views  (ดูล่าสุดเมื่อ 21 นาที)

  การเขียนเว็บ แบบ SPA หรือ Single Page Applications ทำอย่างไร ถามเมื่อ (2015-09-21)   2,405 views  (ดูล่าสุดเมื่อ 23 นาที)

  เมื่อไรจึงควรนำ Rule Engine เข้ามาใช้ ถามเมื่อ (2015-09-16)   2,125 views  (ดูล่าสุดเมื่อ 26 นาที)

  ขอตัวอย่าง Hibernate get Sequenc Oracle โดยไม่ต้อง Mapping ครับ ถามเมื่อ (2013-07-04)   2,531 views  (ดูล่าสุดเมื่อ 27 นาที)

  ตัวอย่าง Javascript หาตำแหน่ง GPS location latitude longitude ถามเมื่อ (2018-06-25)   1,573 views  (ดูล่าสุดเมื่อ 54 นาที)

  PHP Codeigniter วิธี get Pimarykey แบบ auto increment หลังจากการ Save ล่าสุด ถามเมื่อ (2017-06-12)   1,260 views  (ดูล่าสุดเมื่อ 60 นาที)

  Oracle SQL วิธี query field CLOB แปลงเป็น String ถามเมื่อ (2018-09-07)   4,055 views  (ดูล่าสุดเมื่อ 80 นาที)

  Javascript เก็บค่าลง localStorage กับ SessionStorage ต่างกันอย่างไร ถามเมื่อ (2017-12-26)   2,080 views  (ดูล่าสุดเมื่อ 83 นาที)

  วิธี Add Classpath iReport เพื่อ Connect database Oracle ผ่าน JDBC ถามเมื่อ (2018-10-08)   1,976 views  (ดูล่าสุดเมื่อ 95 นาที)


 

บ้านเดียวกันดอทคอม เว็บถามตอบ รวมทุกเรื่องที่คุณอยากรู้ ให้ความรู้ ความบันเทิง มีสาระ
www.ban1gun.com