Introduktion
Aspose.Cells FOSS för Java är ett rent-Java 17, MIT-licensierat bibliotek för att skapa och manipulera Excel .xlsx arbetsböcker utan något Microsoft Office-beroende. Detta inlägg går igenom de vanligaste kalkylbladsadministrationsoperationerna: skapa arbetsböcker, läsa in filer, arbeta med celler och spara resultat.
Snabbstart
Lägg till Maven-beroendet i din pom.xml för att komma igång:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-cells-foss</artifactId>
<version>26.5.0</version>
</dependency>Ingen licensfil eller API-nyckel krävs. Biblioteket är helt öppen källkod under MIT.
Skapa en arbetsbok
Konstruktorn Workbook() skapar en ny, tom arbetsbok med ett standardsblad:
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
Använd WorksheetCollection.add(sheetName) för att lägga till namngivna blad och removeAt(sheetName) för att ta bort dem:
int idx = workbook.getWorksheets().add("Report");
workbook.getWorksheets().get(idx).setName("Report");
workbook.getWorksheets().removeAt("Sheet1");
Ladda en befintlig fil
Skicka en filsökväg till Workbook(fileName) för att öppna en befintlig .xlsx arbetsbok:
Workbook workbook = new Workbook("data/report.xlsx");
System.out.println("Sheets: " + workbook.getWorksheets().getCount());
För inmatningsströmmar (t.ex. från en databas eller HTTP svar), använd Workbook(stream):
try (java.io.InputStream is = new java.io.FileInputStream("data/report.xlsx")) {
Workbook workbook = new Workbook(is);
}
Läsa och skriva celler
Worksheet.getCells() returnerar Cells-samlingen. Åtkomst till enskilda celler via namn eller via nollbaserat rad-/kolumnindex:
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);
Inställning av formler
Använd Cell.setFormula() för att lagra en formelsträng i en cell. Formeln utvärderas när arbetsboken sparas och laddas om:
cells.get("B3").setFormula("=SUM(B2:B2)");
System.out.println(cells.get("B3").getFormula()); // =SUM(B2:B2)
Formelresultat beräknas när arbetsboken sparas och laddas om.
Spara arbetsboken
Workbook.save(fileName) skriver arbetsboken; formatet bestäms av filändelsen (.xlsx skapar en Excel 2007+-fil):
workbook.save("output/result.xlsx");
Omge alltid stora arbetsböcker med try-with-resources för att frigöra filhandtag omedelbart:
try (Workbook workbook = new Workbook("data/input.xlsx")) {
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Updated");
workbook.save("data/output.xlsx");
}
Vad du kan utforska härnäst
Aspose.Cells FOSS för Java inkluderar API:er för arbetsbladsnivåoperationer utöver cellmanipulation:
- Arbetsbladsskydd:
protect()/unprotect()onWorksheet - AutoFilter:
Worksheet.getAutoFilter()för programmatisk datafiltrering - Cellstilar:
Cell.getStyle()/setStyle()withStyleproperties - Sammanfogade celler:
Cells.merge(firstRow, firstColumn, totalRows, totalColumns)
För en fullständig API-genomgång, se developer guide och API reference.
Komma igång
Exemplen ovan täcker de vanligaste uppgifterna för kalkylbladsadministration i Aspose.Cells FOSS för Java. För en fullständig API-genomgång inklusive validering, diagram och formatering, se developer guide.