Apache POI HSSF
Biblioteka Java dla plików binarnych programu Microsoft Excel
Open Source Java API umożliwia odczytywanie, zapisywanie i konwertowanie arkuszy kalkulacyjnych Excel XLS.
Apache POI HSSF to czysta implementacja Java formatu plików programu Excel '97(-2007) (BIFF8). Bezpłatny interfejs API typu open source zapewnia funkcje tworzenia, czytania, modyfikowania i pisania arkuszy kalkulacyjnych Excel XLS. Deweloperzy zainteresowani tylko odczytaniem danych z arkusza kalkulacyjnego mogą korzystać z interfejsu API modelu zdarzeń, aby spełnić swoje potrzeby. W celu modyfikacji danych arkusza kalkulacyjnego można użyć interfejsu API modelu użytkownika. Ważne jest, aby wiedzieć, że system modelu użytkownika ma większe zużycie pamięci niż model użytkownika zdarzenia niskiego poziomu, ale ma główną zaletę, że jest znacznie prostszy w obsłudze.
Apache POI HSSF zapewnia doskonałe wsparcie dla dodatkowych funkcji programu Excel, takich jak praca z arkuszami i formułami, tworzenie stylów komórek przez wypełnianie kolorów i obramowań, czcionki, nagłówki i stopki, kształty, sprawdzanie poprawności danych, obrazy, hiperłącza i wiele innych.
Pierwsze kroki z Apache POI HSSF
Przede wszystkim musisz mieć zainstalowany zestaw Java Development Kit (JDK) w swoim systemie. Jeśli już go masz, przejdź do strony pobieranie Apache POI, aby pobrać najnowszą stabilną wersję w archiwum. Wyodrębnij zawartość pliku ZIP w dowolnym katalogu, z którego wymagane biblioteki można połączyć z programem Java. To wszystko!
Odwoływanie się do punktów POI Apache w projekcie Java opartym na Maven jest jeszcze prostsze. Wszystko, czego potrzebujesz, to dodać następującą zależność do pliku pom.xml i pozwolić swojemu środowisku IDE pobierać i odwoływać się do plików Apache POI Jar.
Zależność Apache POI Maven
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.0.0</version>
</dependency>
Twórz skoroszyt programu Excel i dodawaj arkusze za pomocą interfejsów API Java
Biblioteka Open Source Apache POI HSSF umożliwia programistom tworzenie nowego skoroszytu programu Microsoft Excel w formacie pliku XLS. Deweloperzy mogą łatwo dodawać nowe Arkusze do kolekcji z istniejącego wystąpienia Workbook.
Utwórz nowy plik XLS
// create a new workbook
Workbook workbook = new HSSFWorkbook();
OutputStream outputStream = new FileOutputStream("CreateXls.xls");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// set cell value
cell.setCellValue("File Format Developer Guide");
// save file
workbook.write(outputStream);
Java API do odczytu i zapisu do istniejącego pliku Excel
Apache POI HSSF umożliwia programistom dostęp i odczyt danych z istniejącego skoroszytu programu Microsoft Excel. Czytanie w pliku jest bardzo proste, najpierw utwórz instancję skoroszytu z arkusza programu Excel i przejdź do żądanego arkusza. Następnie zwiększ numer wiersza i wykonaj iterację wszystkich komórek w wierszu. Powtarzaj te kroki, aż wszystkie dane zostaną odczytane. Apache POI HSSF zapewnia również funkcje modyfikowania istniejącego pliku Excel.
Czytaj zawartość komórki za pomocą Javy
// open xls file
InputStream inputStream = new FileInputStream("document.xls");
Workbook workbook = WorkbookFactory.create(inputStream);
// get sheet
Sheet sheet = workbook.getSheetAt(0);
// get row
Row row = sheet.getRow(1);
// get cell
Cell cell = row.getCell(1);
// display data
System.out.println(cell);
Rysuj kształty i dodawaj obrazy do arkusza kalkulacyjnego Excel
Apache POI-HSSF zapewnia funkcje do rysowania kształtów w arkuszu kalkulacyjnym Excel. Obsługuje rysowanie kształtów za pomocą narzędzi do rysowania Microsoft Office. Narysuj różne kształty, takie jak owal, linia, prostokąt i ustaw dowolne inne style kształtów. W Apache POI obrazy są częścią rysunku, obsługując obecnie typy obrazów PNG, JPG i DIB.
Rysuj prostokąt w XLS za pomocą Java
// create a new workbook
Workbook workbook = new HSSFWorkbook();
OutputStream outputStream = new FileOutputStream("DrawShape.xls");
// create a new sheet
Sheet sheet = workbook.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// create rectangle shape
HSSFPatriarch patriarch = (HSSFPatriarch) sheet.createDrawingPatriarch();
HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 254, (short) 1, 0, (short) 1, 0);
HSSFSimpleShape shape = patriarch.createSimpleShape(a);
shape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
// save file
workbook.write(outputStream);
Obsługa czcionek i scalanie komórek arkuszy kalkulacyjnych XLS
Apache POI-HSSF udostępnia metody umożliwiające programistom Java obsługę czcionek w arkuszach kalkulacyjnych Excel. Możemy stworzyć czcionkę, ustawić kolor, ustawić rozmiar itp. Czcionka to interfejs, który zapewnia metody obsługi czcionki. Apache POI-HSSF umożliwia również programistom łączenie komórek w jedną komórkę. W tym celu udostępnia metody, które pobierają indeksy komórek jako argument i scalają komórki w jedną dużą komórkę.
Ustaw czcionkę dla arkusza kalkulacyjnego XLS za pomocą Javy
// create a new XLS file
OutputStream outfile = new FileOutputStream("SetFont.xls");
Workbook wb = new HSSFWorkbook();
// create a new sheet
Sheet sheet = wb.createSheet("Apache POI XSSF");
// create a new row
Row row = sheet.createRow(1);
// create a new cell
Cell cell = row.createCell(1);
// set style
CellStyle style = wb.createCellStyle();
// set text
cell.setCellValue("File Format Developer Guide");
// set font settings
Font font = wb.createFont();
font.setFontHeightInPoints((short) 14);
font.setFontName("Arial");
font.setItalic(true);
font.setBold(true);
// apply font
style.setFont(font);
cell.setCellStyle(style);
// save
wb.write(outfile);