![](https://products-qa.fileformat.com/vi/spreadsheet/java/apache-poi-hssf/header-image.png)
Apache POI HSSF
Thư viện Java cho tệp nhị phân Microsoft Excel
Mã nguồn mở Java API cho phép đọc, ghi và chuyển đổi bảng tính Excel XLS.
Apache POI HSSF là một triển khai Java thuần túy của định dạng tệp Excel '97 (-2007) (BIFF8). API mã nguồn mở miễn phí cung cấp các tính năng để tạo, đọc, sửa đổi và viết bảng tính Excel XLS. Các nhà phát triển quan tâm đến việc chỉ đọc dữ liệu bảng tính có thể sử dụng API mô hình sự kiện để đáp ứng nhu cầu của họ. Để sửa đổi dữ liệu bảng tính, API mô hình người dùng có thể được sử dụng. Cần biết rằng hệ thống mô hình người dùng có dung lượng bộ nhớ cao hơn so với mô hình người dùng sự kiện cấp thấp, nhưng có ưu điểm chính là làm việc đơn giản hơn nhiều.
Apache POI HSSF cung cấp hỗ trợ tuyệt vời cho các tính năng bổ sung của excel như làm việc với trang tính và công thức, tạo kiểu ô bằng cách tô màu và đường viền, phông chữ, đầu trang và chân trang, hình dạng, xác thực dữ liệu, hình ảnh, siêu liên kết, v.v.
Bắt đầu với Apache POI HSSF
Trước hết, bạn cần cài đặt Bộ phát triển Java (JDK) trên hệ thống của mình. Nếu bạn đã có thì hãy truy cập trang tải xuống của Apache POI để tải xuống bản phát hành ổn định mới nhất trong kho lưu trữ. Trích xuất nội dung của tệp ZIP trong bất kỳ thư mục nào từ đó các thư viện bắt buộc có thể được liên kết với chương trình Java của bạn. Đó là tất cả!
Tham chiếu Apache POI trong dự án Java dựa trên Maven của bạn thậm chí còn đơn giản hơn. Tất cả những gì bạn cần là thêm phần phụ thuộc sau vào pom.xml và cho phép IDE của bạn tìm nạp và tham chiếu các tệp Apache POI Jar.
Apache POI Maven Phụ thuộc
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.0.0</version>
</dependency>
Tạo Sổ làm việc Excel & Thêm Trang tính qua API Java
Thư viện mã nguồn mở Apache POI HSSF cho phép các nhà phát triển phần mềm tạo một sổ làm việc Microsoft Excel mới ở định dạng tệp XLS. Các nhà phát triển có thể dễ dàng thêm các Bảng tính mới vào bộ sưu tập từ một phiên bản Sổ làm việc hiện có.
Tạo tệp XLS mới
// 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);
API Java để đọc và ghi vào tệp Excel hiện có
Apache POI HSSF cho phép các nhà phát triển Phần mềm truy cập và đọc dữ liệu từ sổ làm việc Microsoft Excel hiện có. Đọc trong một tệp rất đơn giản, trước tiên hãy tạo một phiên bản sổ làm việc từ một trang tính Excel và truy cập trang tính mong muốn. Sau đó, Tăng số hàng và lặp lại trên tất cả các ô trong một hàng. Lặp lại các bước này cho đến khi tất cả dữ liệu được đọc. Apache POI HSSF cũng cung cấp các tính năng để sửa đổi tệp Excel hiện có.
Đọc nội dung ô qua 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);
Vẽ hình dạng & thêm hình ảnh vào bảng tính Excel
Apache POI-HSSF cung cấp các tính năng để vẽ hình trong Bảng tính Excel. Nó hỗ trợ vẽ hình bằng công cụ vẽ Microsoft Office. Vẽ các hình dạng khác nhau như hình bầu dục, đường thẳng, hình chữ nhật và đặt bất kỳ kiểu hình dạng nào khác. Trong Apache POI, hình ảnh là một phần của bản vẽ, hỗ trợ các loại hình ảnh PNG, JPG & DIB tại thời điểm hiện tại.
Vẽ hình chữ nhật trong XLS qua 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);
Xử lý phông chữ & Hợp nhất các ô của Bảng tính XLS
Apache POI-HSSF cung cấp các phương pháp cho phép lập trình viên Java xử lý phông chữ trong bảng tính Excel. Chúng ta có thể tạo font, đặt màu, đặt kích thước,… Font là một giao diện cung cấp các phương pháp xử lý font. Apache POI-HSSF cũng cho phép các nhà phát triển hợp nhất các ô thành một ô duy nhất. Để làm như vậy, nó cung cấp các phương thức lấy chỉ mục ô làm đối số và hợp nhất các ô thành một ô lớn duy nhất.
Đặt Phông chữ cho Bảng tính XLS qua 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);