Kali ini aku akan membagikan cara membaca dan menulis file excel di java :
1. Yang pertama-tama kita masukkan dulu library jxl.jar, untuk library-nya bisa kita googling.
2. Setelah itu masukkan library-nya ke dalam folder project-nya atau untuk lebih bagusnya kamu
bikin sendiri folder lib-nya di dalam projectnya, tujuannya agar project bisa dipakai di berbagai
laptop/computer yang berbeda.
3. Berikut ini script untuk menampilkan data excel di java (untuk class baca_file):
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import jxl.Sheet;
import jxl.Workbook;
public class file_excel {
public List<ArrayList<String>> baca(File inpFile) {
List<ArrayList<String>> data = new ArrayList<ArrayList<String>>();
try {
Workbook w1 = Workbook.getWorkbook(inpFile);
Sheet s1 = w1.getSheet(0);
ArrayList<String> dt = null;
for (int i = 0; i < s1.getRows(); i++) {
dt = new ArrayList<String>();
for (int j = 0; j < s1.getColumns(); j++) {
dt.add(j, s1.getCell(j, i).getContents());
}
data.add(dt);
}
} catch (Exception e) {
}
return data;
}
public void tulis(File fOut, List<ArrayList<String>> data) {
WritableWorkbook w2 = null;
try {
w2 = Workbook.createWorkbook(fOut);
WritableSheet s2 = w2.createSheet("CobaSheet", 0);
Label lab = null;
for (int i = 0; i < data.size(); i++) {
for (int j = 0; j < data.get(i).size(); j++) {
lab = new Label(j, i, data.get(i).get(j));
s2.addCell(lab);
}
}
w2.write();
w2.close();
} catch (Exception e) {
}
}
}
Setelah itu bikin class baru (nama : main) :
import java.io.File;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class main {
public static void main(String[] args) {
new main().menu();
}
public void baca() {
File fIn = new File("E:\\data.xls");
List<ArrayList<String>> data = new file_excel().baca(fIn);
for (ArrayList<String> arrayList : data) {
for (int i = 0; i < arrayList.size(); i++) {
System.out.print(arrayList.get(i) + " - ");
}
System.out.println("");
}
}
public void input() {
Scanner inp = new Scanner(new InputStreamReader(System.in));
ArrayList<ArrayList<String>> data = new ArrayList<ArrayList<String>>();
int klm = 3;
int brs = 2;
ArrayList<String> dt;
for (int i = 0; i < brs; i++) {
dt = new ArrayList<String>();
for (int j = 0; j < klm; j++) {
System.out.print("Masukkan Data Baris " + (i+1) + " Kolom " + (j+1) + " : ");
dt.add(inp.nextLine());
}
data.add(dt);
}
for (ArrayList<String> rec : data) {
System.out.println(rec.get(0) + " - " + rec.get(1) + " - " + rec.get(2));
}
File fOut = new File("E:\\data.xls");
new File_excel().tulis(fOut, data);
}
public void menu() {
Scanner inp = new Scanner(new InputStreamReader(System.in));
System.out.println("1. Lihat Data");
System.out.println("2. Tulis Data");
System.out.print("Pilihan : ");
int pil = inp.nextInt();
switch (pil) {
case 1:
new main().baca();
break;
case 2:
new main().input();
break;
default:
new main().menu();
}
}
}
Berikut ini outputnya :
Setelah itu kita lihat di drive E sesuai dengan tempat penyimpanan yang sudah kita masukkan ke dalam script :
Setelah itu kita buka file excel-nya dan isinya akan seperti yang kita masukkan di awal :
Sekarang kita lihat data excel yang telah kita buat sebelumnya di aplikasi yang sudah dibuat :