Apache POI HSSF
Βιβλιοθήκη Java για δυαδικά αρχεία Microsoft Excel
Το Open Source Java API επιτρέπει την ανάγνωση, εγγραφή και μετατροπή υπολογιστικών φύλλων Excel XLS.
Το Apache POI HSSF είναι μια καθαρή υλοποίηση Java της μορφής αρχείου Excel '97(-2007) (BIFF8). Το δωρεάν API ανοιχτού κώδικα παρέχει δυνατότητες για τη δημιουργία, την ανάγνωση, την τροποποίηση και τη σύνταξη υπολογιστικών φύλλων Excel XLS. Οι προγραμματιστές που ενδιαφέρονται απλώς να διαβάζουν δεδομένα υπολογιστικών φύλλων μπορούν να χρησιμοποιήσουν το API μοντέλου συμβάντων για να ικανοποιήσουν τις ανάγκες τους. Για την τροποποίηση δεδομένων υπολογιστικού φύλλου, μπορεί να χρησιμοποιηθεί το API μοντέλου χρήστη. Είναι σημαντικό να γνωρίζετε ότι το σύστημα μοντέλου χρήστη έχει μεγαλύτερο αποτύπωμα μνήμης από το μοντέλο χρήστη συμβάντων χαμηλού επιπέδου, αλλά έχει το κύριο πλεονέκτημα ότι είναι πολύ πιο απλό στην εργασία.
Το Apache POI HSSF παρέχει εξαιρετική υποστήριξη για πρόσθετες λειτουργίες excel, όπως εργασία με φύλλα και τύπους, δημιουργία στυλ κελιών συμπληρώνοντας χρώματα και περιγράμματα, γραμματοσειρές, κεφαλίδες και υποσέλιδα, σχήματα, επικυρώσεις δεδομένων, εικόνες, υπερσυνδέσμους και πολλά άλλα.
Ξεκινώντας με το Apache POI HSSF
Πρώτα απ 'όλα, πρέπει να έχετε εγκατεστημένο το Java Development Kit (JDK) στο σύστημά σας. Εάν το έχετε ήδη, προχωρήστε στη σελίδα λήψης του POI του Apache για να λάβετε την πιο πρόσφατη σταθερή έκδοση σε ένα αρχείο. Εξαγάγετε τα περιεχόμενα του αρχείου ZIP σε οποιονδήποτε κατάλογο από όπου μπορούν να συνδεθούν οι απαιτούμενες βιβλιοθήκες με το πρόγραμμα Java σας. Αυτό είναι όλο!
Η αναφορά σε POI του Apache στο έργο Java που βασίζεται στο Maven είναι ακόμα πιο απλή. Το μόνο που χρειάζεστε είναι να προσθέσετε την ακόλουθη εξάρτηση στο pom.xml σας και να αφήσετε το IDE σας να ανακτήσει και να παραπέμψει τα αρχεία Apache POI Jar.
Apache POI Maven Dependency
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.0.0</version>
</dependency>
Δημιουργία βιβλίου εργασίας του Excel και προσθήκη φύλλων μέσω Java API
Η βιβλιοθήκη ανοιχτού κώδικα Apache POI HSSF επιτρέπει στους προγραμματιστές λογισμικού να δημιουργήσουν ένα νέο βιβλίο εργασίας του Microsoft Excel σε μορφή αρχείου XLS. Οι προγραμματιστές μπορούν εύκολα να προσθέσουν νέα φύλλα εργασίας στη συλλογή από μια υπάρχουσα παρουσία του Βιβλίου εργασίας.
Δημιουργήστε ένα νέο αρχείο 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 για ανάγνωση και εγγραφή σε υπάρχον αρχείο Excel
Το Apache POI HSSF επιτρέπει στους προγραμματιστές λογισμικού να έχουν πρόσβαση και να διαβάζουν δεδομένα από το υπάρχον βιβλίο εργασίας του Microsoft Excel. Η ανάγνωση σε ένα αρχείο είναι πολύ απλή, πρώτα δημιουργήστε μια παρουσία βιβλίου εργασίας από ένα φύλλο εργασίας του Excel και μεταβείτε στο επιθυμητό φύλλο. Στη συνέχεια, αυξήστε τον αριθμό της σειράς και επαναλάβετε όλα τα κελιά στη σειρά. Επαναλάβετε αυτά τα βήματα μέχρι να διαβαστούν όλα τα δεδομένα. Το Apache POI HSSF παρέχει επίσης δυνατότητες για την τροποποίηση ενός υπάρχοντος αρχείου Excel.
Διαβάστε το Περιεχόμενο Κυψέλης μέσω Java
// 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);
Σχεδιάστε σχήματα και προσθέστε εικόνες στο υπολογιστικό φύλλο του Excel
Το Apache POI-HSSF παρέχει δυνατότητες για τη σχεδίαση σχημάτων σε υπολογιστικό φύλλο Excel. Υποστηρίζει τη σχεδίαση σχημάτων χρησιμοποιώντας εργαλεία σχεδίασης του Microsoft Office. Σχεδιάστε διάφορα σχήματα όπως οβάλ, γραμμή, ορθογώνιο και ορίστε οποιοδήποτε άλλο στυλ σχήματος. Στο Apache POI, οι εικόνες αποτελούν μέρος του σχεδίου, υποστηρίζοντας τους τύπους εικόνων PNG, JPG & DIB αυτήν τη στιγμή.
Σχεδιάστε το ορθογώνιο σε XLS μέσω 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);
Χειρισμός γραμματοσειρών και συγχώνευση κελιών υπολογιστικών φύλλων XLS
Το Apache POI-HSSF παρέχει μεθόδους που επιτρέπουν στους προγραμματιστές Java να χειρίζονται τη γραμματοσειρά σε υπολογιστικά φύλλα του Excel. Μπορούμε να δημιουργήσουμε τη γραμματοσειρά, να ορίσουμε το χρώμα, να ορίσουμε το μέγεθος κ.λπ. Η γραμματοσειρά είναι μια διεπαφή που παρέχει μεθόδους χειρισμού της γραμματοσειράς. Το Apache POI-HSSF επιτρέπει επίσης στους προγραμματιστές να συγχωνεύουν κελιά σε ένα μόνο κελί. Για να γίνει αυτό, παρέχει μεθόδους που λαμβάνουν τα ευρετήρια κελιών ως όρισμα και συγχωνεύουν τα κελιά σε ένα μεγάλο κελί.
Ορισμός γραμματοσειράς για υπολογιστικό φύλλο XLS μέσω Java
// 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);