Introduction
Aspose.Cells FOSS for Java is a pure-Java 17, MIT-licensed library for creating i manipular Excel. .xlsx llibres de treball sense dependència de Microsoft Office. Aquest post fa una ullada a les operacions de gestió de fitxes més comuns: crear llibres de treball, carregament de fitxers, treballar amb cèl·lules i guardar resultats.
Inici ràpid
Afegeix la dependència de Maven al teu pom.xml Per començar:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-cells-foss</artifactId>
<version>26.5.0</version>
</dependency>No es requereix cap fitxer de llicència o clau d’API. La biblioteca és totalment open-source sota el MIT .
Creació d’un llibre de treball
El Workbook() constructor crea un llibre de treball nou, en blanc amb una pàgina predeterminada:
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
Utilització: WorksheetCollection.add(sheetName) afegir fitxes amb nom i removeAt(sheetName) per eliminar-los:
int idx = workbook.getWorksheets().add("Report");
workbook.getWorksheets().get(idx).setName("Report");
workbook.getWorksheets().removeAt("Sheet1");
Carregar un fitxer existent
Passar una ruta de fitxer a: Workbook(fileName) per obrir una empresa existent. .xlsx llibre de treball:
Workbook workbook = new Workbook("data/report.xlsx");
System.out.println("Sheets: " + workbook.getWorksheets().getCount());
Per a les flux d’entrada (per exemple, des de una base de dades o resposta HTTP), utilitzar Workbook(stream):
try (java.io.InputStream is = new java.io.FileInputStream("data/report.xlsx")) {
Workbook workbook = new Workbook(is);
}
Cèl·lules de lectura i escritura
Worksheet.getCells() torna el nombre de Cells Accedeix a les cèl·lules individuals mitjançant el mètode de recopilació. nom o per indici de línia/columna basat en 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);
Ajust de fórmules
Utilització: Cell.setFormula() La fórmula s’evalua quan el llibre de treball es salva i recarrega:
cells.get("B3").setFormula("=SUM(B2:B2)");
System.out.println(cells.get("B3").getFormula()); // =SUM(B2:B2)
Els resultats de la fórmula es resolen quan el llibre d’obra s’emmagatzema i recarrega.
Salvar el llibre de treball
Workbook.save(fileName) escriu el llibre de treball; el format és determinat pel sistema d’elaboració. extensió de fitxer (.xlsx produeix un fitxer d’Excel 2007+):
workbook.save("output/result.xlsx");
Sempre envolta llibres de treball grans en proves amb recursos per alliberar els processadors de fitxers ràpidament:
try (Workbook workbook = new Workbook("data/input.xlsx")) {
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Updated");
workbook.save("data/output.xlsx");
}
Què seguirem estudiant?
Aspose.Cells FOSS for Java includes APIs for worksheet-level operations beyond cell manipulation:
- Protecció de la fulla d’estudis:
protect()/unprotect()en elWorksheet - AutoFilter:
Worksheet.getAutoFilter()per a filtrar dades programàtiques. - Estils de cèl·lula:
Cell.getStyle()/setStyle()amb:Stylepropietats - Celles fusionades:
Cells.merge(firstRow, firstColumn, totalRows, totalColumns)
Per a una guia completa de l’API, veure el guia de desenvolupadors i el Referència a l’API.
Com començar a treballar
Els exemples anteriors cobreixen les tasques de gestió d’header més comunes en Aspose.Cells FOSS per Java. Per a una guia completa d ‘API que inclou validació, gràfics i formatatge, veure la pàgina web del programa . guia de desenvolupadors.