Đọc Ghi File Excel Trong Java Với Jxl

--- Bài mới hơn ---

  • Đọc Dữ Liệu Từ File Excel
  • Tổng Hợp Các Hàm Excel Thường Dùng Trong Kế Toán Kho 2022
  • Làm Kế Toán Bằng Phần Mềm Excel Có Phù Hợp Với Doanh Nghiệp Của Bạn?
  • 20 Hàm Excel Thường Dùng Trong Kế Toán
  • 10 Tuyệt Chiêu Excel Cho Kế Toán Quản Trị
  • Tạo và ghi file Excel với Jxl

    Bước 1: Tạo đối tượng WritableWorkbook “trỏ” đến file của bạn. Lưu ý là nếu file của bạn đã tồn tại thì nó sẽ bị xóa đi và tạo lại.

    WritableWorkbook workbook = Workbook.createWorkbook(new File(fileName));

    Bước 2: Tạo WritableSheet – sheet bạn cần ghi dữ liệu:

    WritableSheet sheet = workbook.createSheet("name sheet", 0);

    Lưu ý: trong hàm createSheet có 2 đối số, đối số thứ nhất là chuỗi tên sheet, đối số thứ 2 là một số nguyên chỉ vị trí của sheet, vị trí sheet bắt đầu bằng 0.

    Bước 3: Tiếp theo chúng ta sẽ thêm các dạng dữ liệu vào các ô bằng phương thức addCell. Để viết dữ liệu vào các ô, chúng ta sẽ có 3 dạng chính: Chuỗi, Số và Công thức lần lượt được tạo bằng Label, Number, Formula. Ví dụ:

    sheet.addCell(new Label(0, 0, "Add a String to cell")); // add a String to cell A1 sheet.addCell(new Number(0, 1, 100)); // add number 100 to cell A2 sheet.addCell(new Formula(0, 3, "IF(A1=1,"one", "two")")); // add number 100 to cell A3

    Bước 4: Sau khi chúng ta đã thực hiện xong bước 3, chúng ta cần thực hiện lệnh writeclose để hoàn tất việc ghi dữ liệu

    workbook.write(); workbook.close();

    Đọc file Excel với Jxl

    Bước 1: Tạo Workbook “trỏ” đến file của bạn.

    Workbook workbook = Workbook.getWorkbook(new File(fileName));

    Bước 2: Lấy Sheet bạn muốn đọc. Bạn có thể lấy theo vị trí sheet hoặc tên Sheet

    Sheet sheet = workbook.getSheet(0);

    Bước 3: Đọc nội dung từng ô trong bảng tính. Nếu bạn muốn lấy nội dung của một ô nào đó bạn có thể làm như sau: sheet.getCell(col, row).getContents(). Tuy nhiên nếu bạn muốn đọc toàn bộ các ô trong bảng tính hãy lấy hàng và cột cuối cùng chứa dữ liệu bằng sheet.getRows()sheet.getColumns(), và dùng vòng lặp for để đọc từng ô. Sau khi đọc xong, chúng ta cũng cần close workbook như khi viết dữ liệu

    for (int row = 0; row < rows; row++) { for (int col = 0; col < cols; col++) { Cell cell = sheet.getCell(col, row); System.out.print(cell.getContents() + "t"); } System.out.println("n"); } workbook.close();

    Mở và ghi thêm dữ liệu vào Excel với Jxl

    Để mở và ghi thêm dữ liệu vào file Excel, trước tiên chúng ta cần lấy Workbook từ file Excel cần viết thêm giống như khi chúng ta đọc. Sau đó tạo một WritableWorkbook đến chính workbook vừa lấy và chúng ta sẽ làm việc với WritableWorkbook này bình thường.

    Workbook workbook = Workbook.getWorkbook(new File(fileName)); WritableWorkbook writeWorkbook = Workbook.createWorkbook(new File(fileName), workbook);

    Demo code

    package vietSource.net.IOFile; import java.io.File; import java.io.IOException; import java.util.Scanner; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; import jxl.write.Formula; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; /** */ public class ReadWriteExcel { private final String fileName = "/home/nguyenvanquan7826/Desktop/nguyenvanquan7826.xls"; // data to write file private Object data = { { "STT", "Họ và tên", "Điểm", "Xếp loại" }, { "1", "Nguyễn Văn Quân", "9.0", "" }, { "2", "Phạm Thị Hà", "8.0", "" }, { "3", "Nguyễn Bá Cường", "8.5", "" }, { "4", "Vũ Công Tịnh", "9.0", "" }, { "5", "Phạm Trọng Khang", "8", "" }, { "6", "Mai Văn Tài", "8", "" } }; // create and write new file *.xls private void writeFileExcel() { WritableWorkbook workbook; // create workbook try { workbook = Workbook.createWorkbook(new File(fileName)); // create sheet WritableSheet sheet1 = workbook.createSheet("KTPM K10B", 0); // create Label and add to sheet sheet1.addCell(new Label(0, 0, "DANH SÁCH SINH VIÊN TIÊU BIỂU")); // row begin write data int rowBegin = 2; int colBegin = 0; for (int row = rowBegin, i = 0; row < data.length + rowBegin; row++, i++) { for (int col = colBegin, j = 0; col < data args) { ReadWriteExcel rwExcel = new ReadWriteExcel(); while (true) { rwExcel.showMenu(); Scanner scan = new Scanner(System.in); int select = Integer.parseInt(scan.nextLine()); switch (select) { case 1: rwExcel.writeFileExcel(); break; case 2: rwExcel.readFileExcel(); break; case 3: rwExcel.openAndWriteFileExcel(); break; default: scan.close(); break; } } } }

    --- Bài cũ hơn ---

  • Đọc Ghi File Ms Word Bằng Java Với Apache Poi
  • Hướng Dẫn Xuất Dữ Liệu Lớn Ra File Excel Với Thư Viện Apache Poi
  • Đọc Ghi File Excel Bằng Java Sử Dụng Apache Poi
  • Làm Thế Nào Để Hợp Nhất Nhiều Tệp Excel Thành Một
  • Sử Dụng Excel Làm Máy Tính Tay Của Bạn
  • Đọc Ghi File Excel Trong Java Sử Dụng Apache Poi

    --- Bài mới hơn ---

  • Hướng Dẫn Đọc Và Ghi File Excel Trong Java Sử Dụng Thư Viện Apache Poi
  • Thao Tác Với File Excel Trong Java Sử Dụng Api Apache Poi
  • Cách Cài Đặt Email Trong Outlook
  • Cách Cài Đặt Và Sử Dụng Excel Trên Linux
  • Cách Thêm Các Số 0 Vào Đầu Các Giá Trị Trong Excel
  • 1- Apache POI là gì?

    Apache POI là một thư viện mã nguồn mở Java, được cung cấp bởi Apache, nó là một thư viện đầy sức mạnh giúp bạn làm việc với các tài liệu của Microsoft như Word, Excel, Power point, Visio,…

    POI là viết tắt của“Poor Obfuscation Implementation”. Các định dạng file của Microsoft được giấu kín. Những kỹ sư của Apache phải cố gắng để tìm hiểu nó, và họ thấy rằng Microsoft đã tạo ra các định dạng phức tạp một cách không cần thiết. Và cái tên thư viện bắt nguồn từ sự hài ước.

    Poor Obfuscation Implementation: Sự thực hiện cái nghèo nàn ngu muội. (Tạm dịch là vậy).

    Trong tài liệu này tôi hướng dẫn các bạn sử dụng Apache POI để làm việc với Excel.

    Apache POI hỗ trợ bạn làm việc với các định dạng của Microsoft, các class của nó thường có tiếp đầu ngữ HSSF, XSSF, HPSF, … Nhìn vào tiếp đầu ngữ của một class bạn có thể biết được class đó hỗ trợ loại định dạng nào.

    Chẳng hạn để làm việc với các định dạng Excel (XLS) bạn cần các class:

    • HSSFWorkbook
    • HSSFSheet
    • HSSFCellStyle
    • HSSFDataFormat
    • HSSFFont

    Apache POI cung cấp cho bạn các interfaceWorkbook,Sheet,Row,Cell,… và các class thể hiện (implementation) tương ứng là HSSFWorkbook, HSSFSheet, HSSFRow, HSSFCell,…

    Nếu project của bạn sử dụng Maven, bạn chỉ cần khai báo thư viện một cách đơn giản trong chúng tôi :

    Nếu bạn không sử dụng Maven bạn có thể download thư viện Apache POI tại:

    Download về và giải nén, để làm việc với Excel bạn cần ít nhất 3 file jar:

    • poi-**.jar
    • lib/commons-codec-**.jar
    • lib/commons-collections4-**.jar

    Trong tài liệu này, tôi tạo một Project Maven đơn giản có tên ApachePOIExcel

    • Group ID: org.o7planning
    • Artifact ID: ApachePOIExcel

    Microsoft Office các phiên bản trước đây (97-2003) các file excel có định dạng XLS và các phiên bản mới thường sử dụng định dạng XSLX. Để thao tác với các file XSL bạn cần sử dụng các class có tiếp đầu ngữ HSSF. Còn đối với các file định dạng XSLX cần sử dụng các class có tiếp đầu ngữ XSSF.

    Chú ý: Trong tài liệu này tôi đang sử dụng Apache POI 3.15, API có nhiều thay đổi so với phiên bản cũ hơn. Có nhiều phương thức sẽ bị loại bỏ trong phiên bản tương lai (Apache POI 4.x). POI đang hướng tới sử dụng Enum thay thế cho các hằng số trong API của nó.

    7- Cập nhập file Excel có sẵn

    Trong ví dụ này, tôi đọc file excel chúng tôi và cập nhập các giá trị cho cột Salary tăng lên 2 lần.

    Kết quả sau khi cập nhập:

    Nếu bạn có kiến thức về Excel, sẽ không khó để bạn thiết lập một công thức. Với Apache POI bạn có thể tạo một Cell có kiểu CellType.FORMULA, giá trị của nó được tính dựa trên một công thức.

    SUM

    Ví dụ: Tính tổng các ô trên cùng cột “C” từ dòng thứ 2 tới dòng thứ 4:

    // Tạo cell có kiểu FORMULA cell = row.createCell(rowIndex, CellType.FORMULA); // Sét công thức. cell.setCellFormula("SUM(C2:C4)");

    Công thức từ các ô riêng lẻ:

    cell = row.createCell(rowIndex, CellType.FORMULA); cell.setCellFormula("0.1*C2*D3");

    Với một cell có kiểu FORMULA bạn có thể in ra công thức của nó và sử dụng FormulaEvaluator để tính toán giá trị của ô cho bởi công thức đó.

    // Formula String formula = cell.getCellFormula(); FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator(); // CellValue CellValue cellValue = evaluator.evaluate(cell); double value = cellValue.getNumberValue(); String value = cellValue.getStringValue(); boolean value = cellValue.getBooleanValue(); // ...

    --- Bài cũ hơn ---

  • Hàm Vlookup Cách Sử Dụng Và Bài Tập Áp Dụng Vlookup
  • Lập Báo Cáo Tổng Hợp Tự Động Với Excel Và Vba
  • Hàm Concatenate, Hàm Nối Các Chuỗi Ký Tự Trong Excel
  • Hàm Concatenate Trong Excel, Ứng Dụng Để Nối Các Chuỗi, Ô, Mảng Và Cột
  • 3 Hàm Nối Chuỗi Trong Excel Cực Hay Và Đơn Giản Được Sử Dụng Nhất
  • Đọc Và Ghi File Trong Java (Bài 5)

    --- Bài mới hơn ---

  • Cách Làm Sổ Sách Kế Toán Trên Excel Doanh Nghiệp
  • Các Công Việc Của Kế Toán Thuế Trong Doanh Nghiệp Vừa Và Nhỏ
  • Excel Trong Kế Toán Bán Hàng
  • Tải Bài Tập Excel Kế Toán Có Lời Giải
  • Một Số Công Cụ Excel Tiện Ích Cho Kế Toán
  • Đọc và ghi file trong java là các hoạt động nhập/xuất dữ liệu (nhập dữ liệu từ bàn phím, đọc dữ liệu từ file, ghi dữ liệu lên màn hình, ghi ra file, ghi ra đĩa, ghi ra máy in…) đều được gọi là luồng (stream).

    Đọc và ghi file trong java – Các loại luồng dữ liệu

    • Bước 1: Tạo đối tượng luồng và liên kết với nguồn dữ liệu.
    • Bước 2: Thao tác dữ liệu (đọc hoặc ghi hoặc cả hai).
    • Bước 3: Đóng luồng.

    Xử lý nhập xuất dữ liệu sử dụng luồng byte

    Sử dụng luồng byte trong các trường hợp như nhập xuất kiểu dữ liệu nguyên thủy (như kiểu int, float, double, boolean), nhập xuất kiểu dữ liệu kiểu đối tượng (object)

    Đọc và ghi dữ liệu nhị phân (binary data)

    package file_handling; import java.io.DataOutputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /** * * @author chúng tôi */ public class DataOutputExample { public static void main(String args) { try { //Bước 1: Tạo đối tượng luồng và liên kết nguồn dữ liệu FileInputStream fis = new FileInputStream("d:/file/mydata.bin"); DataInputStream dis = new DataInputStream(fis); //Bước 2: Đọc dữ liệu int n = dis.readInt(); double m = dis.readDouble(); //Bước 3: Đóng luồng fis.close(); dis.close(); //Hiển thị nội dung đọc từ file System.out.println("Số nguyên: " + n); System.out.println("Số thực: " + m); } catch (IOException ex) { ex.printStackTrace(); } } }

    Ví dụ 3: Đọc và ghi dữ liệu kiểu object

    Tạo lớp Stock và lớp này phải cài đặt giao diện Serializable

    package file; import java.io.Serializable; /** * * @author chúng tôi */ public class Stock implements Serializable{ private int id; private String desc; private double price; private int quantity; public Stock(int id, String desc, double price, int quantity) { chúng tôi = id; chúng tôi = desc; this.price = price; this.quantity = quantity; } @Override public String toString() { return id + "-" + desc + "-" + price + "-" + quantity; } }

    Tạo lớp ObjectOutputExample dùng để ghi dữ liệu kiểu object

    package file; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; /** * * @author chúng tôi */ public class ObjectOutputExample { public static void main(String = { new Stock(1, "CD ROM", 100, 2) ,new Stock(2, "CPU", 500, 2) ,new Stock(3, "HP Scanner", 75, 1) }; //Bước 2: Ghi mảng đối tượng vào file oos.writeObject(s); //Bước 3: Đóng luồng fos.close(); oos.close(); } catch (IOException ex) { System.out.println("Loi ghi file: "+ex); } } }

    Tạo lớp ObjectInputExample dùng để đọc dữ liệu kiểu object

    package file; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.ObjectInputStream; /** * * @author chúng tôi */ public class ObjectInputExample { public static void main(String = (Stock args) { try { //Bước 1: Tạo đối tượng luồng và liên kết nguồn dữ liệu File f = new File("d:/mydata3.txt"); FileWriter fw = new FileWriter(f); //Bước 2: Ghi dữ liệu fw.write("Ghi dữ liệu bằng luồng character"); //Bước 3: Đóng luồng fw.close(); } catch (IOException ex) { System.out.println("Loi ghi file: " + ex); } } }

    Ví dụ 2: Đọc dữ liệu với FileReader

    package file_handling; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; /** * * @author chúng tôi */ public class FileReaderExample { public static void main(String[] args) { try { //Bước 1: Tạo đối tượng luồng và liên kết nguồn dữ liệu File f = new File("d:/mydata3.txt"); FileReader fr = new FileReader(f); //Bước 2: Đọc dữ liệu BufferedReader br = new BufferedReader(fr); String line; while ((line = br.readLine()) != null){ System.out.println(line); } //Bước 3: Đóng luồng fr.close(); br.close(); } catch (Exception ex) { System.out.println("Loi doc file: "+ex); } } }

    Đọc và ghi file trong java – Thực hành

    Tạo package tên file và thực hiện các yêu cầu bên dưới

    Bài thực hành số 1: Tạo lớp NhanVien có các thuộc tính mã nhân viên, họ tên, tuổi và lương.

    • Viết setter, getter, constructor và toString.
    • Viết phương thức cho phép nhập thông tin cho 3 nhân viên từ bàn phím. Sử dụng FileWriter để ghi thông tin vào nhanvien.txt.
    • Viết phương thức để đọc nội dung file chúng tôi và in những gì đọc được từ file ra màn hình.

    Bài thực hành số 2: Tạo lớp mới và thực hiện các xử lý sau

    • Viết phương thức tạo mảng 3 nhân viên, nhập thông tin cho các nhân viên, sử dụng ObjectOutputStream để ghi mảng đối tượng nhân viên vào file nhanvien.bin
    • Viết phương thức để đọc file chúng tôi và in mảng nhân viên ra màn hình.

    --- Bài cũ hơn ---

  • Cách Đặt Mật Khẩu Password Cho File Excel
  • Cách Lấy Lại File Excel Chưa Lưu, Bị Lưu Đè, Bị Xóa Đơn Giản Nhất
  • Các Hàm Excel Chuyên Dùng Trong Kế Toán Kho
  • Những Hàm Excel Mà Kế Toán Thường Dùng ” Kế Toán Lê Ánh
  • Các Hàm Excel Thường Dùng Trong Kế Toán Kho Các Bạn Cần Biết
  • Đọc Ghi File Excel Bằng Java Sử Dụng Apache Poi

    --- Bài mới hơn ---

  • Hướng Dẫn Xuất Dữ Liệu Lớn Ra File Excel Với Thư Viện Apache Poi
  • Đọc Ghi File Ms Word Bằng Java Với Apache Poi
  • Đọc Ghi File Excel Trong Java Với Jxl
  • Đọc Dữ Liệu Từ File Excel
  • Tổng Hợp Các Hàm Excel Thường Dùng Trong Kế Toán Kho 2022
  • Đọc ghi file Excel bằng Java sử dụng Apache POI

    Apache POI là một thư viện mã nguồn mở cung cấp bởi apache được sử dụng để xử lý các file office như word, excel, powerpoint…

    1.1 Xử lý file Excel với Apache POI

    Apache POI xử lý các thành phần trong excel theo đúng lập trình hướng đối tượng – mỗi thành phần trong Excel đều được coi như 1 đối tượng.

    Các class cơ bản được dùng để đọc ghi file Excel

    • HSSF: các class có tên bắt đầu là HSSF được dùng để sử lý các file Microsoft Excel 2003 (.xls)
    • XSSF: các class có tên bắt đầu là XSSF được dùng để sử lý các file Microsoft Excel 2007 trở về sau (.xlsx)
    • XSSFWorkbookHSSFWorkbook là các class xử lý với Excel Workbook
    • HSSFSheetXSSFSheet là các class xử lý với Excel Worksheet
    • Row: định nghĩa một dòng trong excel
    • Cell: định nghĩa một ô trong excel

    Ở đây mình sử dụng maven để lấy thư viện của Apache POI.

      Cho các file Microsoft Excel 2003

      Cho các file Microsoft Excel 2007 trở về sau

    3.1 Ghi file Excel

    Tạo 1 Worksheet có name là “Customer_Info”

    dòng đầu tiên hiển thị “List Of Customer”

    Các dòng tiếp theo hiển thị các thông tin của customer (id, name, email), mỗi thông tin ở 1 column.

    package stackjava.com.apachepoiexcel.demo; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class WriteFileExcel { public static void main(String args) { try { FileInputStream excelFile = new FileInputStream(new File("Demo-ApachePOI-Excel.xlsx")); Workbook workbook = new XSSFWorkbook(excelFile); Sheet datatypeSheet = workbook.getSheetAt(0); DataFormatter fmt = new DataFormatter(); Row firstRow = iterator.next(); Cell firstCell = firstRow.getCell(0); System.out.println(firstCell.getStringCellValue()); while (iterator.hasNext()) { Row currentRow = iterator.next(); Customer customer = new Customer(); customer.setId(Integer.parseInt(fmt.formatCellValue(currentRow.getCell(0)))); customer.setName(currentRow.getCell(1).getStringCellValue()); customer.setEmail(currentRow.getCell(2).getStringCellValue()); listOfCustomer.add(customer); } for (Customer customer : listOfCustomer) { System.out.println(customer); } workbook.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }

    *Lưu ý: id của customer là integer nên khi ghi vào file excel nó sẽ là kiểu numeric, do đó khi đọc ra thì nó sẽ đọc là numeric và chuyển thành double, ví dụ 1 sẽ là 1.0. Do đó ta dùng DataFormatter để định dạng nó về kiểu string và parse lại thành integer.

    Kết quả:

    List of Customer Customer Customer [id=3, name=Vin Diesel, [email protected]]

    Okay, Done!

    Đọc ghi file Excel bằng Java sử dụng Apache POI

    Reference:

    --- Bài cũ hơn ---

  • Làm Thế Nào Để Hợp Nhất Nhiều Tệp Excel Thành Một
  • Sử Dụng Excel Làm Máy Tính Tay Của Bạn
  • Cách Sử Dụng Excel Online Trên Máy Tính Của Bạn
  • Những Hàm Cơ Bản Nhất Trong Excel
  • Cách Lập Các Nghiệp Vụ Kế Toán Bán Hàng Bằng Phần Mềm Quản Lý Bán Hàng Trên Excel Miễn Phí
  • Hướng Dẫn Đọc File Text Trong Java Sử Dụng “bufferedreader”

    --- Bài mới hơn ---

  • Cách Sửa Lỗi Cách Dòng Khi Căn Đều Trong Word
  • Cách Chuyển Vntime Sang Time New Roman Trong Word Và Excel
  • Cách Chuyển Font Chữ Vntime Sang Time New Roman Giữ Định Dạng
  • Lỗi Không Đánh Được Chữ Và Cách Sửa Lỗi Trong Word 2010,2016
  • Word Bị Lỗi Không Sửa Được, Word Lỗi Không Thêm Nội Dung Mới Được
  • Khi sử dụng class BufferedReader trong Java để đọc nội dung một file text thì chúng ta có hai cách khác nhau đó là sử dụng method readLine() hoặc read() của class này. Trong bài viết này chúng ta sẽ tìm hiểu cách làm chi tiết của từng phương pháp với việc áp dụng vào đọc một file text nằm ở địa chỉ C:tmptest.txt.

    Chuẩn Bị

    Trước tiên thì bạn cần tạo file test.txt ở địa chỉ thư mục C:tmp như vừa đề cập để đảm bảo quá trình đọc nội dung file không gặp lỗi.

    Sau đó bạn tạo một tập tin Main.java với nội dung như sau:

    import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class Main { public static void main(String[] args) { } }

    Bây giờ bên trong method main() của Main class này chúng ta sẽ thêm code Java để thực hiện việc đọc nội dung của file text sử dụng BufferedReader theo hai cách khác nhau.

    Đọc File Text Sử Dụng BufferedReader với readLine()

    Để đọc file theo cách này thì trong method main() của Main class bạn thêm đoạn code phía sau:

    ... BufferedReader br = null; try { br = new BufferedReader(new FileReader("C:\tmp\test.txt")); System.out.println("Đọc nội dung file sử dụng phương thức readLine()"); String textInALine; while ((textInALine = br.readLine()) != null) { System.out.println(textInALine); textInALine = br.readLine(); } } catch (IOException e) { e.printStackTrace(); } finally { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } ...

    Đoạn code đầy đủ của class Main.java sẽ như sau:

    Ở đoạn code trên bạn chú ý method br.readLine() được gọi môi khi vòng lặp while được chạy để kiểm tra điều kiện của vòng lặp này cho tới khi nào giá trị trả về đồng thời in ra nội dung của giá trị này nếu như giá trị này khác null, trường hợp giá trị này là null thì chấm dứt vòng lặp:

    while ((textInALine = br.readLine()) != null) { System.out.println(textInALine); textInALine = br.readLine(); }

    Đọc File Text Sử Dụng BufferedReader với read()

    Để sử dụng cách này thì trong method main() trống được tạo ra lúc đầu bạn thêm vào đoạn code phía sau:

    ... BufferedReader br = null; try { br = new BufferedReader(new FileReader("C:\tmp\test.txt")); System.out.println("Đọc nội dung file sử dụng phương thức read()"); int num=0; char ch; while((num = br.read()) != -1) { ch = (char) num; System.out.print(ch); } } catch (IOException e) { e.printStackTrace(); } finally { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } ...

    Đoạn code đầy đủ của class Main.java sẽ như sau:

    Khi gọi br.read(), Java sẽ trả về từng các số mã hoá của từng ký tự thay vì nội dung cả dòng như cách sử dụng redline(). Chúng ta cũng sử dụng vòng lặp while để đọc ra từng số mã hoá ký tự này và sau đó chuyển hoá về dạng ký tự chữ:

    while((num = br.read()) != -1) { ch = (char) num; System.out.print(ch); }

    --- Bài cũ hơn ---

  • Căn Chỉnh Văn Bản Trong Word 2010
  • Header Là Gì? Những Điều Thu Vị Cần Biết Về Header Trong Web, Pts, Word
  • Hướng Dẫn Cách Tạo Văn Bản Ngẫu Nhiên Trong Word Đơn Giản
  • Tạo Liên Kết Hyperlink Trong Word
  • Microsoft Word: Cách Tạo Tiêu Đề Trang (Header) Và Chân Trang (Footer)
  • Đọc Ghi File Ms Word Bằng Java Với Apache Poi

    --- Bài mới hơn ---

  • Đọc Ghi File Excel Trong Java Với Jxl
  • Đọc Dữ Liệu Từ File Excel
  • Tổng Hợp Các Hàm Excel Thường Dùng Trong Kế Toán Kho 2022
  • Làm Kế Toán Bằng Phần Mềm Excel Có Phù Hợp Với Doanh Nghiệp Của Bạn?
  • 20 Hàm Excel Thường Dùng Trong Kế Toán
  • Đọc ghi file MS Word bằng Java với Apache POI

    Apache POI là một thư viện mã nguồn mở cung cấp bởi apache được sử dụng để xử lý các file office như word, excel, powerpoint…

    XWPFDocument:Được sử dụng để đọc ghi các file MS-Word với định dạng .docx (đọc, lưu file, thêm đoạn văn bản…)

    XWPFParagraph: Được dùng để tạo đoạn paragraph trong tài liệu word. (Tùy chỉnh căn lề, border)

    XWPFRun: Được sử dụng thể thêm text vào paragraph (Tùy chỉnh font, size…)

    XWPFTable: Được dùng để thêm mới bảng vào file (Thêm cột, thêm dòng, cài đặt chiều rộng cho cột)

    XWPFWordExtractor: Đây là class cơ bản được dùng để lấy text đơn giản từ tài liệu word (lấy tất cả text bên trong file word)

    Thư viện sử dụng:

    Ví dụ ghi file MS Word:

    package stackjava.com.apachepoi.word.demo; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.xwpf.usermodel.XWPFParagraph; import org.apache.poi.xwpf.usermodel.XWPFRun; public class DemoWrite { public static void main(String args) { try { FileInputStream fis = new FileInputStream("demo-apache-apoi-word.docx"); XWPFDocument document = new XWPFDocument(OPCPackage.open(fis)); for (XWPFParagraph paragraph : paragraphList) { System.out.println(paragraph.getText()); } System.out.println("=============================="); System.out.println("Read file using XWPFWordExtractor "); XWPFWordExtractor wordExtractor = new XWPFWordExtractor(document); System.out.println(wordExtractor.getText()); wordExtractor.close(); document.close(); } catch (Exception ex) { ex.printStackTrace(); } } }

    Kết quả:

    Paragraph 1: stackjava.com Paragraph 2: demo read/write file MS-Word ============================== Read file using XWPFWordExtractor Paragraph 1: stackjava.com Paragraph 2: demo read/write file MS-Word

    Okay, Done!

    References:

    https://poi.apache.org/document/

    --- Bài cũ hơn ---

  • Hướng Dẫn Xuất Dữ Liệu Lớn Ra File Excel Với Thư Viện Apache Poi
  • Đọc Ghi File Excel Bằng Java Sử Dụng Apache Poi
  • Làm Thế Nào Để Hợp Nhất Nhiều Tệp Excel Thành Một
  • Sử Dụng Excel Làm Máy Tính Tay Của Bạn
  • Cách Sử Dụng Excel Online Trên Máy Tính Của Bạn
  • Hướng Dẫn Đọc Và Ghi File Excel Trong Java Sử Dụng Thư Viện Apache Poi

    --- Bài mới hơn ---

  • Thao Tác Với File Excel Trong Java Sử Dụng Api Apache Poi
  • Cách Cài Đặt Email Trong Outlook
  • Cách Cài Đặt Và Sử Dụng Excel Trên Linux
  • Cách Thêm Các Số 0 Vào Đầu Các Giá Trị Trong Excel
  • Phím Tắt Ubuntu, Tổng Hợp Phím Nóng Hay Sử Dụng Trong Hệ Điều Hành Ubu
  • Excel là định dạng file rất phổ biến được tạo ra bởi Microsoft. Thông thường, các ứng dụng Java sử dụng thư viện Apache POI để đọc và ghi tập tin Excel. Trong bài này, tôi sẽ hướng dẫn cách để đọc và ghi các tập tin Excel sử dụng API của thư viện Apache POI.

    Giới thiệu về Apache POI?

    Apache POI là một thư viện mã nguồn mở Java, được cung cấp bởi Apache. Thư viện này cung cấp các API (phương thức) làm việc với các tài liệu của Microsoft như Word, Excel, Power point, Visio,…

    Các class của Apache POI thường có tiếp đầu ngữ HSSF, XSSF, HPSF, … Nhìn vào tiếp đầu ngữ của một class bạn có thể biết được class đó hỗ trợ loại định dạng nào.

    • HSSF (Horrible SpadSheet Format): Đọc và ghi file định dạng Microsoft Excel (XLS – định dạng hỗ trợ của Excel 2003).
    • XSSF (XML SpadSheet Format): Đọc và ghi định dạng file Open Office XML (XLSX – định dạng hỗ trợ của Excel 2007 trở lên).
    • SXSSF (Streaming version of XSSFWorkbook) : SXSSF là một phần mở rộng API của XSSF, được sử dụng khi xuất các file excel lớn và có bộ nhớ heap sapce hạn chế.

    Tổng quan Apache POI Excel

    Microsoft Excel hiện tại có 2 phần mở rộng:

    • .xls: tương ứng với phiên bản Microsoft Excel 2003 trở về trước. Định dạng này được Apache POI hỗ trợ bởi các lớp java với tiếp đầu ngữ là HSSF.
    • .xlsx: tương ứng với phiên bản Microsoft Excel 2007 trở về sau. Định dạng này được Apache POI hỗ trợ bởi các lớp java với tiếp đầu ngữ là XSSF, SXSSF.

    Một số khái niệm cơ bản của Apache API:

    Apache POI cung cấp cho bạn các interface Workbook, Sheet, Row, Cell,… và các class thể hiện (implementation) tương ứng:

    • Workbook: đại diện cho một file Excel. Nó được triển khai dưới hai class là: HSSFWorkbook và XSSFWorkbook tương ứng cho định dạng .xls và .xlsx .
    • Sheet: đại diện cho một bảng tính Excel (một file Excel có thể có nhiều Sheet). Nó có 2 class là HSSFSheet và XSSFSheet.
    • Row: đại diện cho một hàng trong một bảng tính (Sheet). Nó có 2 class là HSSFRow và XSSFRow.
    • Cell: đại diện cho một ô trong một hàng (Row). Tương tự nó cũng có 2 class là HSSFCell and XSSFCell.

    Khai báo thư viện Apache POI

    Tạo Maven project và khai báo thư viện trong file chúng tôi của project như sau:

    Lưu ý: Các phiên bản cũ của Apache POI chỉ hỗ trợ các định dạng file binary như doc, xls, ppt, … .Từ phiên bản 3.5 trở đi, POI hỗ trợ các định dạng file OOXML của MS-Office như docx, xlsx, pptx, …

    Ví dụ đọc và ghi file Excel

    Microsoft Office các phiên bản trước đây (97-2003) các file excel có định dạng .xls và các phiên bản mới hơn (2007 trở về sau) thường sử dụng định dạng .xlsx. Để thao tác với các file .xls cần sử dụng các class có tiếp đầu ngữ HSSF. Còn đối với các file định dạng .xlsx cần sử dụng các class có tiếp đầu ngữ XSSF.

    Ví dụ ghi file excel (.xls, .xlsx)

    Book.java

    package com.gpcoder.apachepoi; public class Book { private Integer id; private String title; private Integer quantity; private Double price; private Double totalMoney; }

    WriteExcelExample.java

    Thực thi chương trình trên, một file chúng tôi được tạo ra trong thư mục C:/demo như sau:

    Ví dụ đọc file excel (.xls, .xlsx)

    Kết quả thực thi chương trình trên:

    Book Book Book

    Lưu ý:

    Các kiểu dữ liệu số khi đọc từ file excel sẽ có giá trị là kiểu double.

    Nguồn: https://gpcoder.com/3144-huong-dan-doc-va-ghi-file-excel-trong-java-su-dung-thu-vien-apache-poi/

    All Rights Reserved

    --- Bài cũ hơn ---

  • Đọc Ghi File Excel Trong Java Sử Dụng Apache Poi
  • Hàm Vlookup Cách Sử Dụng Và Bài Tập Áp Dụng Vlookup
  • Lập Báo Cáo Tổng Hợp Tự Động Với Excel Và Vba
  • Hàm Concatenate, Hàm Nối Các Chuỗi Ký Tự Trong Excel
  • Hàm Concatenate Trong Excel, Ứng Dụng Để Nối Các Chuỗi, Ô, Mảng Và Cột
  • Đọc Dữ Liệu Từ File Excel

    --- Bài mới hơn ---

  • Tổng Hợp Các Hàm Excel Thường Dùng Trong Kế Toán Kho 2022
  • Làm Kế Toán Bằng Phần Mềm Excel Có Phù Hợp Với Doanh Nghiệp Của Bạn?
  • 20 Hàm Excel Thường Dùng Trong Kế Toán
  • 10 Tuyệt Chiêu Excel Cho Kế Toán Quản Trị
  • Các Bước Thiết Lập File Quản Lý Kho Vật Tư Bằng Excel
  • I. Mở đầu

    Mình ít khi sử dụng đến cách làm này, nên cóp nhặt trên mạng đoạn code này, bạn nào dùng có thể copy thẳng vào trong project.

    Yêu cầu:

    Giải nén và add các tất cả các file jar vào project ngoại trừ log4j.

    Lưu ý là phải add cả những file jar ở trong folder /lib/ /ooxml-lib/

    II. Class đọc file Excel

    Mình đặt cái class này ở trong package utilities.

    Trong class có 3 method chính:

    1. setExcelFile: Đọc file và xác định data ở sheet nào trong file excel
    2. findCells: Tìm vị trí các cell có chứa data trong sheet
    3. getTestData: Lấy data và lưu vào các array

    III. Cách inject data vào trong các test method

    1. Cấu trúc file Excel

    File Excel phù hợp với Class trên có dạng như sau:

    2. Cách lấy đường dẫn đến file linh hoạt

    File data nên được đặt trong project luôn, đừng để ở vị trí nào đó ở trên máy ngoài project vì nếu có ai đó làm chung với bạn thì đường dẫn đến file sẽ bị sai. Tất nhiên là đường dẫn đến project ở mỗi máy lại khác nhau nên chúng ta phải có cách để dynamic cái đường dẫn đó để lúc nào cũng đúng dù ở bất kỳ máy nào.

    Cái File.separator chính là cái ký tự “” hoặc “/”, sẽ tùy vào hệ điều hành để hiển thị.

    3. Thực hiện việc đọc file excel vào lúc nào?

    Tùy vào mục đích sử dụng để xác định thời điểm đọc file Excel:

    • Đọc file 1 lần và sẽ run trước tất cả các test
    • Test nào cần data thì chỉ đọc file ở test đó.

    Class test Login sẽ như sau:

    Trong đó: sử dụng annotation DataProper của TestNG để làm việc inject data vào trong method test.

    Một số điểm lưu ý:

    • Nếu cái dataProper method mà bạn đặt ở Class khác thì trên chỗ method Test bạn cần phải khai báo cái class chứa method DataProvider.
    • Bắt buộc cái method Test phải có parameter trùng với số cột được định nghĩa trong file excel (ko tính 2 cái từ ở góc dùng để đánh dấu). Giả sử cái file data có thêm 1 cột nữa là email thì ở trong Method Test cũng phải có thêm parameter Email
    • Không nên định nghĩa pass/fail ở trong file data vì 2 TH pass và fail sẽ có cách check kết quả khác nhau
    • Càng không nên lưu pass/fail ra file excel vì bạn đã có 1 cái report của TestNG rồi, giờ còn phải mò mẫm vào file excel để xem kết quả pass fail thì quá khổ.

    Và đây là kết quả sau khi run test, mình chỉ làm demo nên giá trị đầu vào nó ko đúng với tiêu chí test lắm.

    --- Bài cũ hơn ---

  • Đọc Ghi File Excel Trong Java Với Jxl
  • Đọc Ghi File Ms Word Bằng Java Với Apache Poi
  • Hướng Dẫn Xuất Dữ Liệu Lớn Ra File Excel Với Thư Viện Apache Poi
  • Đọc Ghi File Excel Bằng Java Sử Dụng Apache Poi
  • Làm Thế Nào Để Hợp Nhất Nhiều Tệp Excel Thành Một
  • Cách Đọc File Doc, Xlsx Trên Iphone, Mở File Word, Excel

    --- Bài mới hơn ---

  • 3 Cách Khắc Phục Lỗi File Word Không Mở Được Trên Máy Tính
  • Các Phím Tắt Trong Word 2003,2007,2010,2013,2016 Bạn Nên Nhớ
  • Mẹo Xóa Nền Hình Ảnh Chèn Trong Word 2022, 2022, 2013, 2010, 2007
  • Cách Chèn Biểu Tượng Trong Word
  • Cách Chèn Hình Ảnh Từ Bên Ngoài Vào Văn Bản Trong Ms Word 2003
  • Việc truy cập sử dụng đọc file doc, xlsx trên iPhone là nhu cầu cần thiết với những ai thường xuyên sử dụng thiết bị iPhone trong công việc của mình, tuy nhiên để có thể thực hiện cách mở file word, excel trên iPhone là điều mà không phải ai cũng biết cũng như có thể thực hiện được để thao tác cho mục đích công việc của mình một cách thuận tiện nhất.

    Phần mềm đọc Word, Excel trên Android
    Cách mở và sửa file Word trên Android
    Mở file Word trực tiếp trong Skype trên Android
    Cách chuyển, copy file Word, Excel, Powerpoint vào iPhone, iPad
    Word cho Android, ứng dụng soạn thảo văn bản Word trên Android

    Microsoft Office đã là bộ công cụ văn phòng vô cùng quen thuộc trên các thiết bị máy tính, laptop hiện nay, với nhu cầu sử dụng các công cụ như Word, Excel di động như trên điện thoại ngày càng tăng cách đọc file doc, xlsx trên iPhone lại được nhiều người quan tâm, liệu có cách nào có thể sử dụng Microsoft Office trên iPhone cũng như thực hiện việc mở file word, excel trên iPhone 7, 7 plus, 6s, 6s plus, 6, 5s, 5, 4s hay không.

    Cách mở file Word, Excel trên điện thoại iPhone

    Hướng dẫn đọc file doc, xlsx trên iPhone, mở file word, excel

    1. Cách đọc file doc trên iPhone

    Bước 1 : Để có thể thực hiện việc đọc file doc trên iPhone các bạn truy cập vào ứng dụng Mail trên điện thoại đang dùng.

    Bước 2 : Tiếp đó tại giao diện hòm Mail trên iPhone, các bạn tìm kiếm thư có chứa file doc mà bạn muốn thực hiện đọc file doc, mở file Word trên iPhone.

    Bước 3 : Hệ thống sẽ tiến hành tải file doc này ở trong nội dung Mail, điều bạn có thể thực hiện để đọc file doc trên iPhone này đó chính là ấn chọn vào biểu tượng file Word. Khi đó hệ thống sẽ cho phép bạn mở đọc file doc trên iPhone của mình.

    Bước 2: Các bạn cũng truy cập vào địa chỉ mail và tìm đến file Word, Excel muốn mở. Tại file được hiển thị bạn chọn vào biểu tượng mũi tên hướng lên

    Bước 3: Di chuyển thanh công cụ và chọn đến mục: Sao chép đến Office. Ngay lập tức file Word, Excel của bạn sẽ được mở ra trên ứng dụng Office và bạn có thể thiết lập, chỉnh sửa theo nhu cầu và mục đích của mình.

    https://9mobi.vn/cach-doc-file-doc-xlsx-tren-iphone-mo-file-word-excel-19398n.aspx

    Như vậy chúng ta đã vừa cùng nhau đi tìm hiểu các thao tác thủ thuật cách sử dụng, đọc file doc, xlsx trên iPhone, hy vọng qua bài viết này các bạn cũng đã nắm rõ hơn về cách mở file word, excel trên iPhone đặc biệt dành cho những ai thường xuyên làm việc trên các thiết bị này.

    --- Bài cũ hơn ---

  • Hướng Dẫn Chi Tiết Cách Sử Dụng Zoom Meeting Từ A Đến Z
  • Định Dạng Trang Và In Ấn Trong Word
  • Cách Tạo Watermark Cho Tài Liệu Word
  • Mẹo Chèn Chữ Chìm Watermark Trong Văn Bản Word 2013
  • Bật Mí Cách Bỏ Watermark Trong Word Nhanh Chóng Và Đơn Giản
  • Java: Cách Tạo Và Chèn Dữ Liệu Vào File Excel

    --- Bài mới hơn ---

  • Làm Cách Nào Để Chèn Hoặc Nhúng Thư Outlook Vào Excel?
  • Cách Xem Nhanh Tệp Tin Đính Kèm Trong Outlook
  • Những Lưu Ý Sử Dụng Bộ Microsoft Office Cho Windows 10
  • Hướng Dẫn Lập Dự Toán Xây Dựng Công Trình Trên Excel
  • Tải File Về Không Mở Được Trên Điện Thoại
  • Trong Java, việc đọc tệp excel và ghi tệp excel có một chút khó khăn vì trang tính Excel có các ô để lưu trữ dữ liệu. Java không cung cấp API trực tiếp để đọc hoặc viết các tài liệu Microsoft Excel hoặc Word. Ta sẽ phải dựa vào thư viện của bên thứ ba là Apache POI. Trong phần này, chúng ta sẽ học cách tạo một tệp excel bằng Javacách ghi hoặc chèn dữ liệu vào tệp excel bằng thư viện Apache POI Java.

    1. Thư viện POI Java Apache

    Apache POI (Thực hiện giải mã kém) là một API Java để đọc và ghi Tài liệu Microsoft. Nó chứa các lớp và giao diện. Thư viện Apache POI cung cấp hai cách triển khai để đọc hoặc ghi tệp excel:

    • Triển khai HSSF (Horrible SpadSheet Format): Nó biểu thị một API đang hoạt động với Excel 2003 hoặc các phiên bản cũ hơn.
    • Triển khai XSSF (XML SpadSheet Format): Nó biểu thị một API đang hoạt động với phiên bản Excel 2007 trở lên.

    Trong phần này sẽ sẽ sử dụng triển khai HSSF.

    2. Tạo file Excel trong Java

    Bước 1: Tạo một dự án Java với tên CreateExcelFile từ IntelliJ.

    Bước 2: Tạo một lớp tên CreateExcelFileExample1.

    Bước 2: Tải xuống thư viện Apache POI ( poi-3.17.jar).

    Bước 5: Nhấp chọn Libraries sau đó nhấn dấu + và chọn Java như hình dưới:

    Bước 6: Tìm đến nơi chứa file chúng tôi rồi chọn và nhấp vào nút OK. Điều này sẽ thêm tệp JAR vào dự án. Sau đó, nhấp vào nút Apply để áp dụng các thay đổi rồi nhấn nút OK.

    Sau khi đã hoàn thành tất cả các bước trên, cấu trúc dự án sẽ giống như sau:

    Giờ ta sẽ tiếp tục với các đoạn mã:

    Trong chương trình sau, ta sử dụng thư viện Apache POI để tạo một file excel. Thư viện cung cấp lớp có tên HSSFWorkbook được định nghĩa trong gói org.apache.poi.hssf.usermodel.

    CreateExcelFileExample1.java

    import java.io.*; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Workbook; public class CreateExcelFileExample1 { public static void main(String args) { try { String filename = "C: \ Users \ Anubhav \ Desktop \ CustomersDetail.xlsx"; FileOutputStream fileOut = new FileOutputStream(filename); fileOut.close(); System.out.println("File Excel được tạo thành công."); } catch (Exception e) { e.printStackTrace(); } } }

    Kết quả:

    “C:Program FilesJetBrainsIntelliJ IDEA Community Edition 2022.3.1jbrbinjava.exe” “-javaagent:C:Program FilesJetBrainsIntelliJ IDEA Community Edition 2022.3.1libidea_rt.jar=58581:C:Program FilesJetBrainsIntelliJ IDEA Community Edition 2022.3.1bin” -Dfile.encoding=UTF-8 -classpath E:CoursesJavaCreateExcelFileoutproductionCreateExcelFile;E:CoursesJavaCreateExcelFilepoi-3.17.jar CreateExcelFileExample2

    File Excel được tạo thành công.

    Ta đã tạo được một tệp excel trống tại vị trí được chỉ định.

    3. Tạo và chèn dữ liệu vào file Excel

    CreateExcelFileExample3.java

    import java.io.*; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.usermodel.HSSFRow; public class CreateExcelFileExample3 { public static void main(String");[email protected]");

    Kết quả:

    “C:Program FilesJetBrainsIntelliJ IDEA Community Edition 2022.3.1jbrbinjava.exe” “-javaagent:C:Program FilesJetBrainsIntelliJ IDEA Community Edition 2022.3.1libidea_rt.jar=58597:C:Program FilesJetBrainsIntelliJ IDEA Community Edition 2022.3.1bin” -Dfile.encoding=UTF-8 -classpath E:CoursesJavaCreateExcelFileoutproductionCreateExcelFile;E:CoursesJavaCreateExcelFilepoi-3.17.jar CreateExcelFileExample3

    File Excel đã được tạo thành công.

    Nó tạo một tệp excel tại vị trí được chỉ định với các giá trị mà ta đã chèn bằng cách sử dụng phương thức setCellValue().

    --- Bài cũ hơn ---

  • Đọc Ghi Excel File Sử Dụng Apache Poi
  • Thao Tác Với Excel File Bằng Apache Poi
  • Hàm Vlookup Với Một Số Ví Dụ Cơ Bản Và Nâng Cao Trong Excel
  • Làm Cách Nào Để Đếm / Chỉ Tính Tổng Các Số Dương Hoặc Số Âm Trong Excel?
  • Hướng Dẫn Cách Dùng Hàm Nối Ký Tự Trong Excel
  • Web hay
  • Links hay
  • Push
  • Chủ đề top 10
  • Chủ đề top 20
  • Chủ đề top 30
  • Chủ đề top 40
  • Chủ đề top 50
  • Chủ đề top 60
  • Chủ đề top 70
  • Chủ đề top 80
  • Chủ đề top 90
  • Chủ đề top 100
  • Bài viết top 10
  • Bài viết top 20
  • Bài viết top 30
  • Bài viết top 40
  • Bài viết top 50
  • Bài viết top 60
  • Bài viết top 70
  • Bài viết top 80
  • Bài viết top 90
  • Bài viết top 100