Java có thể đọc các tệp Excel không?
Hay quá, đây là các bước để đọc dữ liệu từ file Excel trong Java, nhưng bạn quên mất một điều là bạn cần tìm loại ô trước khi lấy giá trị ô, nếu không bạn sẽ bị báo lỗi khi đọc ô đó. Đọc giá trị ngày thậm chí còn phức tạp hơn. Bạn ngạc nhiên là không có loại ô ngày trong Excel (cả XLS và XLSX), thay vào đó Excel lưu trữ ngày ở dạng số. Show
Vì vậy, bạn cần so sánh loại ô với HSSFCell. CELL_TYPE_NUMERIC nếu bạn đang đọc tệp XLS và XSSFCell. CELL_TYPE_NUMERIC nếu bạn đang đọc tệp XLSX, nhưng câu chuyện vẫn chưa kết thúc ở đây, nếu bạn chỉ in giá trị ô bằng cách sử dụng getNumericCellValue(), you will not get any error but you will see an arbitrary number. Để in giá trị ngày thực, bạn cần sử dụng phương thức getDateCellValue() , phương thức này sẽ trả về một đối tượng của java.util.Date , nếu bạn muốn hiển thị ngày đã định dạng, thì bạn cần định dạng ngày bằng SimpleDateFormat hoặc bằng cách sử dụng thư viện Ngày và Giờ của Joda. Để đọc một tệp excel trong Java, tệp đó phải nằm trong đường dẫn lớp. Để tránh các sự cố, tôi sẽ sử dụng Eclipse IDE để viết chương trình này và nó sẽ tạo trực tiếp một tệp excel trong dự án của Eclipse, tệp này luôn nằm trong đường dẫn lớp. Cách đọc/ghi từ tệp XLS trong JavaĐây là ví dụ đầu tiên của chúng tôi để đọc các giá trị Chuỗi và ngày từ các tệp Excel trong Java. Trong ví dụ này, trước tiên chúng tôi tạo định dạng tệp Excel cũ i. e. Tệp XLS sinh nhật. xls và sau này chúng ta sẽ đọc từ cùng một tệp. Khi chúng tôi chạy chương trình của mình, bạn có thể thấy tệp excel này được tạo trong thư mục dự án Eclipse của bạn, như được hiển thị bên dưới.Các bước ghi Data vào file XLS trong Java
Các bước này phù hợp để ghi các giá trị Chuỗi và Số nhưng để ghi các giá trị ngày vào tệp Excel, bạn cần làm theo các bước sau.
Bước đọc dữ liệu từ file XLS trong Java
Trong chương trình này, logic đọc và viết được gói gọn trong hai phương thức tiện ích tĩnh readFromExcel() và writeIntoExcel(), so you can also take a look at them for exact code for reading writing XLS file in Java. ______0 Trong chương trình của chúng tôi, trước tiên chúng tôi tạo một tệp excel với các cột Chuỗi và ngày, sau đó đọc từ cùng một tệp và hiển thị các giá trị trong bảng điều khiển. Bây giờ hãy xác minh đầu ra của chương trình này. Nó hiển thị chính xác giá trị ngày, mặc dù không được định dạng, điều đó có nghĩa là tệp excel đã được tạo thành công và sau này Java có thể đọc được từ đó. Nếu bạn nhìn vào thư mục dự án Eclipse của mình, bạn sẽ thấy ngày sinh nhật. xls được tạo ở đó, nếu bạn mở tệp đó bằng Microsoft Excel hoặc bất kỳ trình soạn thảo Open Office nào, bạn sẽ thấy đầu ra sau. Điều này là do tôi chưa bao gồm trang tính. autoSizeColumn(1) gọi phương thức trong lần chạy đầu tiên và vì độ rộng của cột không đủ để hiển thị ngày ở định dạng được yêu cầu e. g. đ. mm. yyyy nó chỉ hiển thị ######. Để giải quyết vấn đề ngày không hiển thị chính xác này, tất cả những gì bạn cần làm là bật tính năng tự động định cỡ cột trong Excel bằng cách gọi sheet. autoSizeColumn(1) , trong đó chỉ mục cột là cột bạn muốn tự động thay đổi kích thước. Nếu bạn chạy lại chương trình với mã đó, bạn có thể thấy các giá trị ngày được định dạng và khớp đúng trong cột được yêu cầu, như được hiển thị bên dưới Ví dụ về Apache POI để đọc tệp XLSX trong JavaĐọc và ghi sang định dạng tệp excel mới XLSX cũng giống như vậy, bạn chỉ cần thêm poi-ooxml. jar và thay thế tất cả các lớp HSFF bằng các lớp XSSF e. g. thay vì sử dụng HSSFWorkbook , hãy sử dụng XSSF Workbook , thay vì sử dụng HSFFSheet use XSSFSheet, instead of using HSSFRow use XSSFRow and instead of using HSSFCell just use XSSFCell class.Phần còn lại của mã và các bước sẽ giống nhau. Trong chương trình Java sau đây, tôi sẽ hướng dẫn các bạn cách đọc tệp XLSX trong Java. Trong chương trình này, trước tiên, chúng tôi tạo một tệp excel và ghi các giá trị chuỗi và ngày vào đó, sau đó đọc từ cùng một tệp excel và hiển thị dữ liệu vào bảng điều khiển, chỉ khác ở lần này là thay vì tạo tệp XLS, chương trình của chúng tôi sẽ . Cách đọc XLS từ Excel trong Java?Ví dụ về POI của Apache để đọc tệp XLSX trong Java
. g. thay vì sử dụng HSSFWorkbook, hãy sử dụng XSSFWorkbook, thay vì sử dụng HSFFSheet, hãy sử dụng XSSFSheet, thay vì sử dụng HSSFRow, hãy sử dụng XSSFRow và thay vì sử dụng HSSFCell, hãy sử dụng lớp XSSFCell. jar and replace all HSFF classes with XSSF classes e.g. instead of using HSSFWorkbook, use XSSFWorkbook, instead of using HSFFSheet use XSSFSheet, instead of using HSSFRow use XSSFRow and instead of using HSSFCell just use XSSFCell class.
Làm cách nào để đọc tệp Excel động trong Java?Đọc tệp Excel bằng Java . Nhận tham chiếu của trang tính trong một đối tượng Worksheet Lấy số lượng hàng và cột dữ liệu trong trang tính Bắt đầu một vòng lặp cho các hàng Bắt đầu một vòng lặp lồng nhau cho các cột Đọc dữ liệu từ mỗi ô bằng Worksheet. getCell(). lấy (hàng Index, cột Index). phương thức getValue() Chúng tôi có thể đọc tệp Excel bằng Java mà không cần Apache POI không?Vì vậy, câu trả lời cho câu hỏi của bạn là không, bạn sẽ cần sử dụng Apache POI và ngoài ra - không có gì sai với điều đó. Xin lưu ý thêm, trên con đường trở thành một nhà phát triển giỏi, bạn sẽ cần học cách thực hiện một số nghiên cứu của riêng mình trước khi tìm kiếm sự trợ giúp. Bắt tay bẩn là cách tốt nhất để học mọi thứ. |