Trong hướng dẫn này, chúng ta sẽ tìm hiểu về StringReader trong Java và các phương thức của nó với sự trợ giúp của các ví dụ.

lớp StringReader của gói java.io có thể được sử dụng để đọc dữ liệu (bằng ký tự) từ chuỗi.

Nó mở rộng lớp trừu tượng Reader.

Lưu ý : Trong StringReader, chuỗi được chỉ định hoạt động như một nguồn từ đó các ký tự được đọc riêng lẻ.

1. Tạo một StringReader

Để tạo một StringReader, trước tiên chúng ta phải nhập gói java.io.StringReader. Khi chúng tôi nhập gói ở đây là cách chúng tôi có thể tạo trình đọc chuỗi.

// Creates a StringReader
StringReader input = new StringReader(String data);

Ở đây, chúng tôi đã tạo một tệp StringReader đọc các ký tự từ chuỗi được chỉ định có tên dữ liệu.

2. Phương thức của StringReader

lớp StringReader cung cấp triển khai cho các phương thức khác nhau trình bày trong lớp Reader.

2.1 phương thức read()

  • read() – đọc một ký tự từ trình đọc chuỗi
  • read(char[] array) – đọc các ký tự từ trình đọc và lưu trữ trong mảng được chỉ định
  • read(char[] array, int start, int length) – đọc số ký tự bằng chiều dài từ trình đọc và lưu trữ trong mảng được chỉ định bắt đầu từ vị trí khởi đầu

2.2 Ví dụ: Java StringReader

/*
Cafedev.vn - Kênh thông tin IT hàng đầu Việt Nam
@author cafedevn
Contact: cafedevn@gmail.com
Fanpage: https://www.facebook.com/cafedevn
Group: https://www.facebook.com/groups/cafedev.vn/
Instagram: https://instagram.com/cafedevn
Twitter: https://twitter.com/CafedeVn
Linkedin: https://www.linkedin.com/in/cafe-dev-407054199/
Pinterest: https://www.pinterest.com/cafedevvn/
YouTube: https://www.youtube.com/channel/UCE7zpY_SlHGEgo67pHxqIoA/
*/

import java.io.StringReader;

public class Main {
  public static void main(String[] args) {

    String data = "This is the text read from StringReader.";

    // Create a character array
    char[] array = new char[100];

    try {
      // Create a StringReader
      StringReader input = new StringReader(data);

      //Use the read method
      input.read(array);
      System.out.println("Data read from the string:");
      System.out.println(array);

      input.close();
    }
    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

Đầu ra

Data read from the string:
This is the text read from StringReader.

Trong ví dụ trên, chúng tôi đã tạo một trình đọc chuỗi có tên đầu vào. Trình đọc chuỗi được liên kết với chuỗi dữ liệu.

String data = "This is a text in the string.";
StringReader input = new StringReader(data);

Để đọc dữ liệu từ chuỗi, chúng tôi đã sử dụng phương thức read().

Ở đây, phương thức đọc một mảng ký tự từ trình đọc và lưu trữ trong mảng được chỉ định.

2.3 phương thức skip()

Để loại bỏ và bỏ qua số ký tự đã chỉ định, chúng ta có thể sử dụng phương thức skip()này. Ví dụ,

import java.io.StringReader;

public class Main {
  public static void main(String[] args) {

    String data = "This is the text read from StringReader";
    System.out.println("Original data: " + data);

    // Create a character array
    char[] array = new char[100];

    try {
      // Create a StringReader
      StringReader input = new StringReader(data);

      // Use the skip() method
      input.skip(5);

      //Use the read method
      input.read(array);
      System.out.println("Data after skipping 5 characters:");
      System.out.println(array);

      input.close();
    }

    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

Đầu ra

Original data: This is the text read from the StringReader
Data after skipping 5 characters:
is the text read from the StringReader

Trong ví dụ trên, chúng tôi đã sử dụng phương thức skip()để bỏ qua 5 ký tự khỏi trình đọc chuỗi. Do đó, các nhân vật ‘T’, ‘h’, ‘i’, ‘s’và ‘ ‘được bỏ qua từ người đọc chuỗi gốc.

2.4 phương thức close()

Để đóng trình đọc chuỗi, chúng ta có thể sử dụng phương thức close(). Khi phương thức close()được gọi, chúng ta không thể sử dụng trình đọc để đọc dữ liệu từ chuỗi.

3. Các phương thức khác của StringReader

phương thứcSự miêu tả
ready()kiểm tra xem trình đọc chuỗi đã sẵn sàng để đọc chưa
mark()đánh dấu vị trí trong trình đọc mà dữ liệu đã được đọc
reset()trả điều khiển đến điểm trong đầu đọc nơi đánh dấu được đặt

Để tìm hiểu thêm, hãy truy cập Java StringReader (tài liệu Java chính thức) .

Cài ứng dụng cafedev để dễ dàng cập nhật tin và học lập trình mọi lúc mọi nơi tại đây.

Nguồn và Tài liệu tiếng anh tham khảo:

Tài liệu từ cafedev:

Nếu bạn thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa:

Chào thân ái và quyết thắng!

Đăng ký kênh youtube để ủng hộ Cafedev nha các bạn, Thanks you!