Apache POI adalah library Java yang digunakan untuk membaca dan menulis file Microsoft Office seperti Excel, Word, dan PowerPoint. Untuk tujuan konversi data ke Excel, kita akan fokus pada bagian Apache POI yang berhubungan dengan file Excel, yaitu HSSF
(untuk format .xls
Excel 97 - 2003) dan XSSF
(untuk format .xlsx
Excel 2007+).
Cell adalah tempat untuk menyimpan data dalam baris. Kita dapat mengatur tipe data cell, seperti teks, angka, tanggal, dll.
.xls
(HSSF), ada batasan jumlah baris dan kolom yang dapat ditampung. Untuk data yang sangat besar, sebaiknya menggunakan format .xlsx
(XSSF)..xlsx
(XSSF) daripada .xls
(HSSF).import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileOutputStream;
import java.io.IOException;
public class DataToExcelExample {
public static void main(String[] args) {
// Create a new workbook
Workbook workbook = new XSSFWorkbook();
// Create a new sheet
Sheet sheet = workbook.createSheet("Data Sheet");
// Create a header row
Row headerRow = sheet.createRow(0);
String[] headers = {"Name", "Age", "Email"};
for (int i = 0; i < headers.length; i++) {
Cell cell = headerRow.createCell(i);
cell.setCellValue(headers[i]);
}
// Create data rows
String[][] data = {
{"John Doe", "25", "[email protected]"},
{"Jane Smith", "30", "[email protected]"}
};
for (int i = 0; i < data.length; i++) {
Row dataRow = sheet.createRow(i + 1);
for (int j = 0; j < data[i].length; j++) {
Cell cell = dataRow.createCell(j);
cell.setCellValue(data[i][j]);
}
}
// Auto - size columns
for (int i = 0; i < headers.length; i++) {
sheet.autoSizeColumn(i);
}
// Write the workbook to a file
try (FileOutputStream fileOut = new FileOutputStream("data.xlsx")) {
workbook.write(fileOut);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
workbook.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
XSSFWorkbook
untuk format .xlsx
.autoSizeColumn
untuk mengatur lebar kolom sesuai dengan isi data.data.xlsx
dan menutup workbook setelah selesai.Mengonversi data menjadi Excel dengan Java dapat dilakukan dengan mudah menggunakan library Apache POI. Kita perlu memahami konsep inti seperti workbook, sheet, row, dan cell. Selain itu, kita juga perlu memperhatikan skenario penggunaan, pitfall umum, dan praktik terbaik. Dengan menggunakan kode contoh yang telah diberikan, kita dapat mengaplikasikan konsep ini dalam proyek - proyek real - world.
A1: Tidak, Apache POI juga dapat digunakan untuk membaca data dari file Excel. Kita dapat menggunakan FileInputStream
untuk membuka file Excel dan membaca data dari workbook, sheet, row, dan cell.
A2: Kita dapat menggunakan DataFormat
dan CellStyle
untuk mengatur format tanggal. Contohnya:
DataFormat format = workbook.createDataFormat();
CellStyle dateCellStyle = workbook.createCellStyle();
dateCellStyle.setDataFormat(format.getFormat("dd - MMM - yyyy"));
Cell dateCell = row.createCell(0);
dateCell.setCellValue(new java.util.Date());
dateCell.setCellStyle(dateCellStyle);
.xlsx
?A3: Format .xlsx
memiliki batasan yang jauh lebih besar daripada .xls
. Format .xlsx
dapat menampung hingga 1,048,576 baris dan 16,384 kolom.
This blog post provides a comprehensive guide on converting data to Excel using Java. It covers all the necessary aspects to help readers understand and apply the concepts effectively.