Pendahuluan
Aspose.Cells FOSS for Java adalah perpustakaan Java 17 sumber terbuka yang memungkinkan pengembang
untuk membuat, memuat, memodifikasi, dan menyimpan buku kerja Excel .xlsx sepenuhnya di JVM — dengan
tanpa instalasi Microsoft Office, tanpa perpustakaan native, dan tanpa runtime Aspose komersial
dependency. API publik berada di bawah paket com.aspose.cells_foss dan
dirilis di bawah lisensi MIT, menjadikannya cocok untuk pribadi, sumber terbuka, dan
proyek komersial secara keseluruhan.
Perpustakaan ini dikirim sebagai artefak Maven standar dan mencakup model objek spreadsheet OOXML inti: workbooks, worksheets, cells, styles, dan collections. Ini dibangun dengan Maven 3.9+ dan menargetkan Java 17+, terintegrasi secara alami ke dalam pipeline build Java modern mana pun.
Tambahkan dependensi ke pom.xml Anda dan Anda siap untuk menghasilkan atau memproses buku kerja Excel dari servlet, pekerjaan batch, fungsi Lambda, atau konteks server‑side Java lainnya.
Fitur Utama
Manajemen Workbook dan Worksheet
Kelas Workbook adalah titik masuk untuk semua operasi spreadsheet. Ia mengimplementasikan
AutoCloseable sehingga terintegrasi dengan bersih pada pola try-with-resources. Anda dapat
membuat workbook baru, memuat file .xlsx yang ada, menambah dan menghapus worksheet, mengganti nama
sheet dengan setName(), mengatur sheet aktif, dan mengontrol visibilitas tab.
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
import com.aspose.cells_foss.WorksheetCollection;
try (Workbook workbook = new Workbook()) {
WorksheetCollection sheets = workbook.getWorksheets();
Worksheet sheet = sheets.get(0);
sheet.setName("Sales");
workbook.save("sales.xlsx");
}
Nilai Sel dan Rumus
Kelas Cell mendukung penyimpanan nilai bertipe melalui putValue() untuk string, integer,
double, boolean, dan nilai LocalDateTime. String formula disimpan dengan
setFormula() dan akan dihitung ulang oleh Excel saat dibuka. Tipe nilai diekspos
melalui CellValueType — STRING, NUMBER, BOOLEAN, DATE_TIME, atau FORMULA.
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
Cell a1 = sheet.getCells().get("A1");
a1.putValue("Revenue");
Cell b1 = sheet.getCells().get("B1");
b1.putValue(12500.75);
Cell c1 = sheet.getCells().get("C1");
c1.setFormula("=B1*1.2");
workbook.save("values.xlsx");
}
Pemformatan Sel dan Gaya
Pemformatan diterapkan melalui kelas Style, diambil dari cell.getStyle() dan ditulis kembali dengan cell.setStyle(). Anda dapat mengonfigurasi tebal dan warna pada Font, menerapkan HorizontalAlignment, dan mengatur string format angka khusus melalui style.setCustom(). Tinggi baris dan lebar kolom dikendalikan melalui getRows().get(n).setHeight() dan getColumns().get(n).setWidth().
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
Cell cell = sheet.getCells().get("B1");
cell.putValue(9999.5);
Style style = cell.getStyle();
style.getFont().setBold(true);
style.setCustom("#,##0.00");
cell.setStyle(style);
workbook.save("styled.xlsx");
}
Validasi Data dan Pemformatan Bersyarat
Aturan validasi data ditambahkan melalui sheet.getValidations().add(). Setiap objek Validation menyimpan sebuah ValidationType (mis., WHOLE_NUMBER), sebuah OperatorType (mis., BETWEEN), dan string formula untuk batasnya. Pemformatan bersyarat ditambahkan melalui sheet.getConditionalFormattings().add(), yang mengembalikan sebuah FormatConditionCollection di mana Anda menentukan rentang sel dan kondisi.
import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.Validation;
import com.aspose.cells_foss.ValidationType;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
int vi = sheet.getValidations().add(new CellArea(1, 0, 10, 0));
Validation validation = sheet.getValidations().get(vi);
validation.setType(ValidationType.WHOLE_NUMBER);
validation.setOperator(OperatorType.BETWEEN);
validation.setFormula1("1");
validation.setFormula2("100");
workbook.save("validated.xlsx");
}
AutoFilters dan Pengaturan Halaman
AutoFilters dikonfigurasi dengan memanggil ws.getAutoFilter().setRange() dengan notasi A1
string rentang. Objek PageSetup mengontrol ukuran kertas, orientasi, dan cocok‑ke‑halaman
pengaturan untuk output siap cetak. Proteksi lembar kerja diterapkan melalui protect() denganWorksheetProtectionModel.
Panduan Cepat
Tambahkan dependensi Maven ke pom.xml Anda:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>cells-foss</artifactId>
<version>1.0.0</version>
</dependency>
Buat buku kerja, isi sel, terapkan pemformatan, dan simpan:
import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;
public class QuickStart {
public static void main(String[] args) {
try (Workbook workbook = new Workbook()) {
Worksheet sheet = workbook.getWorksheets().get(0);
sheet.setName("Report");
sheet.getCells().get("A1").putValue("Revenue");
Cell cell = sheet.getCells().get("B1");
cell.putValue(12500.75);
Style style = cell.getStyle();
style.getFont().setBold(true);
style.setCustom("#,##0.00");
cell.setStyle(style);
sheet.getCells().getRows().get(0).setHeight(22.0);
sheet.getCells().getColumns().get(1).setWidth(14.5);
workbook.save("report.xlsx");
}
}
}
Format yang Didukung
| Format | Ekstensi | Baca | Tulis |
|---|---|---|---|
| Excel Open XML | .xlsx | ✓ | ✓ |
Penyimpanan saat ini terbatas pada .xlsx. Perpustakaan menyimpan dan melakukan round-trips formula, tetapi bukan mesin perhitungan spreadsheet lengkap.
Sumber Terbuka & Lisensi
Aspose.Cells FOSS for Java dirilis di bawah lisensi MIT. Anda bebas untuk menggunakan, memodifikasi, dan mendistribusikannya dalam proyek pribadi, sumber terbuka, dan komersial tanpa pembatasan. Kode sumber tersedia di github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.