Introducere
Aspose.Cells FOSS for Java is a pure-Java 17, MIT-licensed library for creating şi manipularea Excel-ului. .xlsx cărți de lucru fără dependență Microsoft Office. Acest articol prezintă cele mai comune operaţiuni de gestionare a fişelor de calcul: crearea cărți de lucru, încărcarea fișierelor, lucrul cu celulele și salvarea rezultatelor.
Început rapid
Adăugaţi dependenţa Maven la dvs. pom.xml Pentru a începe:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-cells-foss</artifactId>
<version>26.5.0</version>
</dependency>Nu este necesar nici un fișier de licență sau cheie API. Biblioteca este complet open-source sub MIT.
Crearea unui caiet de lucru
În ceea ce priveşte Workbook() constructor creează o carte de lucru nouă, goală cu o singură foaie standard:
import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.Worksheet;
Workbook workbook = new Workbook();
WorksheetCollection sheets = workbook.getWorksheets();
Worksheet sheet = sheets.get(0);
System.out.println(sheet.getName()); // Sheet1
Utilizare: WorksheetCollection.add(sheetName) pentru a adăuga fișele numite și removeAt(sheetName) pentru a le elimina:
int idx = workbook.getWorksheets().add("Report");
workbook.getWorksheets().get(idx).setName("Report");
workbook.getWorksheets().removeAt("Sheet1");
Încărcarea unui fișier existent
Transmite un fişier către: Workbook(fileName) pentru a deschide o companie existentă. .xlsx carnet de lucru:
Workbook workbook = new Workbook("data/report.xlsx");
System.out.println("Sheets: " + workbook.getWorksheets().getCount());
Pentru fluxurile de intrare (de exemplu, dintr-o bază de date sau răspuns HTTP), utilizați Workbook(stream):
try (java.io.InputStream is = new java.io.FileInputStream("data/report.xlsx")) {
Workbook workbook = new Workbook(is);
}
Celule de citit şi scris
Worksheet.getCells() returnează data de la Cells Acces la celule individuale prin: Numele sau indicele la rând/columnă pe bază de zero:
import com.aspose.cells.foss.Cells;
import com.aspose.cells.foss.Cell;
WorksheetCollection sheets = workbook.getWorksheets();
Cells cells = sheets.get(0).getCells();
// Write by cell name
cells.get("A1").putValue("Product");
cells.get("B1").putValue("Revenue");
// Write by row/column index
cells.get(1, 0).putValue("Widget A"); // A2
cells.get(1, 1).putValue(45000); // B2
// Read back
String name = cells.get("A2").getStringValue();
Object rev = cells.get("B2").getValue();
System.out.println(name + ": " + rev);
Setarea formulelor
Utilizare: Cell.setFormula() pentru a stoca un șir de formule într-o celulă. Formula este evaluată atunci când cartea de lucru este salvată și încărcată din nou:
cells.get("B3").setFormula("=SUM(B2:B2)");
System.out.println(cells.get("B3").getFormula()); // =SUM(B2:B2)
Rezultatele formulei sunt rezolvate atunci când cartea de lucru este salvată și încărcată din nou.
Salvarea carnetului de lucru
Workbook.save(fileName) Scrie cartea de lucru; formatul este determinat de către extensie de fişier (.xlsx produce un fișier Excel 2007+):
workbook.save("output/result.xlsx");
Întotdeauna înfășurați cărțile de lucru mari în teste cu resurse pentru a elibera prompt manipulatoarele fișierelor:
try (Workbook workbook = new Workbook("data/input.xlsx")) {
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Updated");
workbook.save("data/output.xlsx");
}
Ce să explorăm în continuare
Aspose.Cells FOSS for Java includes APIs for worksheet-level operations beyond cell manipulation:
- Protecția fișei de lucru:
protect()/unprotect()înWorksheet - AutoFilter:
Worksheet.getAutoFilter()pentru filtrarea datelor programatice - Stiluri de celule:
Cell.getStyle()/setStyle()cu:Styleproprietăți - Celule fuzionate:
Cells.merge(firstRow, firstColumn, totalRows, totalColumns)
Pentru o descriere completă a API, consultați ghid pentru dezvoltatori și a Referință API.
Cum să începem?
Exemplele de mai sus acoperă cele mai comune sarcini de gestionare a fișelor de calcul în Aspose.Cele FOSS pentru Java. Pentru o descriere completă a API, inclusiv validarea, diagrame și formatare, consultați ghid pentru dezvoltatori.