Rate this post

Trong Java, có hai cách chính để đọc và ghi file là sử dụng lớp FileReader và FileWriter và lớp Scanner và PrintWriter.

Các bài viết liên quan:

Để đọc file, bạn có thể sử dụng lớp FileReader và Scanner. Ví dụ:

File file = new File("example.txt");
Scanner sc = new Scanner(file);
while (sc.hasNextLine()) {
    String line = sc.nextLine();
    System.out.println(line);
}
sc.close();

Trong ví dụ trên, chúng ta tạo một đối tượng File với đường dẫn đến file cần đọc, sau đó sử dụng Scanner để đọc từng dòng trong file và in ra màn hình.

Để ghi file, bạn có thể sử dụng lớp FileWriter và PrintWriter. Ví dụ:

File file = new File("example.txt");
FileWriter fr = new FileWriter(file);
PrintWriter pr = new PrintWriter(fr);
pr.println("example text");
pr.close();
fr.close();

Trong ví dụ trên, chúng ta tạo một đối tượng File với đường dẫn đến file cần ghi, sau đó sử dụng FileWriter và PrintWriter để ghi dữ liệu vào file.

Lưu ý rằng khi sử dụng các lớp này, bạn cần xử lý các ngoại lệ nếu file không tồn tại hoặc không có quyền truy cập.

Cũng có một cách khác để đọc và ghi file trong Java là sử dụng lớp như InputStream và OutputStream.

Ví dụ về đọc file:

FileInputStream inputStream = new FileInputStream("example.txt");
byte[] data = new byte[inputStream.available()];
inputStream.read(data);
inputStream.close();
String content = new String(data);
System.out.println(content);

Ví dụ trên sử dụng FileInputStream để đọc dữ liệu từ file và chuyển nó thành một mảng byte. Sau đó, chúng ta chuyển mảng byte đó thành chuỗi và in ra màn hình

Ví dụ về ghi file:

FileOutputStream outputStream = new FileOutputStream("example.txt");
String content = "example text";
byte[] data = content.getBytes();
outputStream.write(data);
outputStream.flush();
outputStream.close();

Ví dụ trên sử dụng FileOutputStream để ghi dữ liệu vào file. Chúng ta tạo một chuỗi và chuyển nó thành mảng byte. Sau đó, sử dụng phương thức write để ghi dữ liệu vào file

Còn một cách khác để đọc và ghi file trong Java là sử dụng NIO (New Input/Output) API, đặc biệt là lớp Path, Files và StandardOpenOption.

Ví dụ về đọc file:

Path path = Paths.get("example.txt");
List<String> lines = Files.readAllLines(path);
for (String line : lines) {
    System.out.println(line);
}

Ví dụ trên sử dụng Paths.get() để lấy đường dẫn đến file và Files.readAllLines() để đọc tất cả dòng trong file.

Ví dụ về ghi file:

Path path = Paths.get("example.txt");
String content = "example text";
Files.write(path, content.getBytes(), StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING);

Ví dụ trên sử dụng Paths.get() để lấy đường dẫn đến file, Files.write() để ghi dữ liệu vào file với tùy chọn StandardOpenOption.CREATE và StandardOpenOption.TRUNCATE_EXISTING để tạo

Cách sử dụng NIO API để đọc và ghi file rất tiện lợi và dễ sử dụng. Nó cung cấp các phương thức để đọc và ghi file dễ dàng và thực hiện các thao tác với file một cách hiệu quả hơn so với các lớp InputStream và OutputStream.

Ngoài ra, NIO API còn cung cấp các tính năng mở rộng khác như làm việc với nhiều file cùng lúc, làm việc với thư mục, làm việc với kích thước file lớn, v.v.

Tuy nhiên, cần lưu ý rằng NIO API chỉ có sẵn từ Java 7 trở đi, vì vậy nếu bạn đang sử dụng một phiên bản cũ hơn, bạn sẽ không thể sử dụng NIO API.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now