Въведение
Aspose.Cells FOSS for Java is a pure-Java 17, MIT-licensed library for creating и манипулиране на Excel. .xlsx работните книги без зависимост от Microsoft Office. В този пост ще разгледаме най-често срещаните операции за управление на електронни таблици: създаване на работните книги, зареждане на файлове, работа с клетки и съхранение на резултати.
Бързо стартиране
Добавете зависимостта на Мавен към вашата pom.xml за да започнете:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-cells-foss</artifactId>
<version>26.5.0</version>
</dependency>Не е необходим лицензен файл или API ключ. Библиотеката е напълно с отворен код под MIT.
Създаване на работен справочник
Съветът на ЕС Workbook() constructor създава нова, празна работна книга с един стандартен лист:
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
Използване на: WorksheetCollection.add(sheetName) да се добавят именни листа и removeAt(sheetName) да ги премахне:
int idx = workbook.getWorksheets().add("Report");
workbook.getWorksheets().get(idx).setName("Report");
workbook.getWorksheets().removeAt("Sheet1");
Зареждане на съществуващ файл
Предаване на файлов път към: Workbook(fileName) да се открие съществуващ .xlsx работен лист:
Workbook workbook = new Workbook("data/report.xlsx");
System.out.println("Sheets: " + workbook.getWorksheets().getCount());
За входящи потоци (напр. от база данни или HTTP отговор), използвайте Workbook(stream):
try (java.io.InputStream is = new java.io.FileInputStream("data/report.xlsx")) {
Workbook workbook = new Workbook(is);
}
Четещи и пишат клетки
Worksheet.getCells() връща се: Cells Достъп до отделните клетки чрез: наименование или по индекс на ред/колона, базиран на нула:
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);
Настройка на формули
Използване на: Cell.setFormula() за съхранение на последователност от формули в клетка. Формулата се оценява, когато работната книга е запазена и презаредена:
cells.get("B3").setFormula("=SUM(B2:B2)");
System.out.println(cells.get("B3").getFormula()); // =SUM(B2:B2)
Резултатите от формулата се разрешават, когато работната книга е запазена и презаредена.
Записване на учебника
Workbook.save(fileName) В този случай, когато се използва за изготвяне на работна книга. разширение на файла (.xlsx създава файл Excel 2007+):
workbook.save("output/result.xlsx");
Винаги опаковайте големи работни книги в опитни ресурси, за да освободите файловите ръководители незабавно:
try (Workbook workbook = new Workbook("data/input.xlsx")) {
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Updated");
workbook.save("data/output.xlsx");
}
Какво да изследваме след това?
Aspose.Cells FOSS for Java includes APIs for worksheet-level operations beyond cell manipulation:
- Защита на работния лист:
protect()/unprotect()на 1 януариWorksheet - AutoFilter:
Worksheet.getAutoFilter()за филтриране на програмни данни - Стили на клетки:
Cell.getStyle()/setStyle()с:Styleсобственост - Сглобени клетки:
Cells.merge(firstRow, firstColumn, totalRows, totalColumns)
За пълен преглед на API, вижте ръководство за разработчиците и на Справочник за API.
Започваме
Примерите по-горе обхващат най-често срещаните задачи за управление на електронни таблици в Aspose.Cells FOSS for Java. За пълен API проход, включително валидиране, диаграми и форматиране вижте ръководство за разработчиците.