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

 2,684 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,684 view  หมวดหมู่ : สำหรับโปรแกรมเมอร์  วันที่สร้าง : 07/04/2019



SOA,Java,XSLT

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

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

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

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



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

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

  ขอวิธี ตรวจสอบว่าเป็น string หรือ int ทีค่ะ Java นะคะ ถามเมื่อ (2011-06-24)   2,911 views  (ดูล่าสุดเมื่อ 3 นาที)

  PHP number format แบบมี ทศนิยม 2 ตำแหน่ง ถามเมื่อ (2013-07-10)   3,117 views  (ดูล่าสุดเมื่อ 21 นาที)

  วิธี เช็คเงื่อนไข ใน SQL Command ของ Oracle ถามเมื่อ (2012-11-29)   3,317 views  (ดูล่าสุดเมื่อ 23 นาที)

  ถามเกี่ยวกับ Spring mvc ค่ะว่า formview successview มันเรียกใช้ตอนใหน ถามเมื่อ (2015-08-23)   1,796 views  (ดูล่าสุดเมื่อ 37 นาที)

  Json คืออะไรครับ ต่างจาก JQuery อย่างไร ถามเมื่อ (2012-01-27)   2,386 views  (ดูล่าสุดเมื่อ 39 นาที)

  เปิดไฟล์ SThumbDB ในโทรศัพท์ sumsung ด้วย sd card ไม่ได้ ถามเมื่อ (2011-09-03)   3,054 views  (ดูล่าสุดเมื่อ 39 นาที)

  Java clone Object ด้วย Cloneable ถามเมื่อ (2018-06-03)   1,504 views  (ดูล่าสุดเมื่อ 60 นาที)

  Oracle คืออะไรครับ ถามเมื่อ (2020-10-05)   4,008 views  (ดูล่าสุดเมื่อ 93 นาที)

  ORACLE alter table not null ยังไงครับ ถามเมื่อ (2017-11-10)   1,355 views  (ดูล่าสุดเมื่อ 116 นาที)

  PLSQL select into แบบ Dynamic SQL ด้วย bind variable ถามเมื่อ (2017-03-03)   2,531 views  (ดูล่าสุดเมื่อ 118 นาที)


 

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