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() on Worksheet
  • AutoFilter: Worksheet.getAutoFilter() för programmatisk datafiltrering
  • Cellstilar: Cell.getStyle() / setStyle() with Style properties
  • 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.

Relaterade resurser