BufferedReader trong Java: Cách đọc văn bản từ luồng đầu vào



Bài viết này trình bày về BufferedReader trong Java từ lớp Reader cùng với các hàm tạo và phương thức khác nhau và mô tả với các ví dụ.

Java cung cấp một số cơ chế để đọc từ tập tin . Một lớp quan trọng giúp thực hiện thao tác này là BufferedReader . Vì vậy, bài viết này trên BufferedReader trong sẽ giúp bạn hiểu được lớp Bufferedreader cùng với các ví dụ. Sau đây là các chủ đề được đề cập trong blog này:

BufferedReader trong Java là gì?

BufferedReader là một Lớp Java đọc văn bản từ luồng đầu vào. Nó đệm các ký tự để có thể đọc các ký tự hiệu quả, mảng , v.v. Nó kế thừa lớp trình đọc và làm cho mã hiệu quả vì chúng ta có thể đọc từng dòng dữ liệu với readline () . Có một số lưu ý mà chúng ta phải ghi nhớ khi làm việc với lớp BufferedReader trong Java.





  • Chúng tôi có thể phải chỉ định kích thước bộ đệm mặc dù mặc định đủ lớn cho bất kỳ mục đích nào.
  • Với mỗi yêu cầu được thực hiện từ một người đọc là một tương ứng, một yêu cầu đọc cũng được tạo từ một ký tự bên dưới.
  • Bạn nên bao bọc một lớp BufferedReader xung quanh bất kỳ trình đọc nào chẳng hạn như InputStreamReaders.
  • Đối với các chương trình sử dụng DataInputaStreams để nhập văn bản, một BufferedReader thích hợp sẽ thay thế DataInputStream để bản địa hóa nó.

Khai báo lớp BufferedReader

public class BufferedReader mở rộng Reader

Java BufferedReader Constructors

Người xây dựng Sự miêu tả

BufferedReader (Trình đọc Reader)

Hàm tạo này tạo ra một luồng nhập ký tự đệm hoạt động trên bộ đệm đầu vào có kích thước mặc định.



BufferedReader (Trình đọc Reader, kích thước int)

Nó sử dụng kích thước được chỉ định cho bộ đệm đầu vào để đệm luồng đầu vào ký tự.

Phương pháp và mô tả

Sau đây là các phương thức với mô tả mà chúng ta có cho lớp Java BufferedReader.



sự khác biệt giữa ném và ném trong java
phương pháp Sự miêu tả

int read ()

Đọc một ký tự

Chuỗi readLine ()

Nó đọc một dòng văn bản

void reset ()

Định vị lại luồng đến vị trí nơi phương thức đánh dấu được gọi lần cuối

int read (char [] cb, int off, int len)

Đọc các ký tự trong một phần của mảng

boolean markSupported ()

Nó kiểm tra hỗ trợ luồng đầu vào cho phương pháp đặt lại và đánh dấu

boolean sẵn sàng ()

Nó kiểm tra xem luồng đầu vào đã sẵn sàng để đọc hay chưa

bỏ qua dài (dài n)

bỏ qua các ký tự

void close ()

Nó đóng luồng đầu vào

void mark (int readAheadLimit)

flume trong hadoop là gì
Được sử dụng để đánh dấu vị trí hiện tại trong luồng

Thí dụ:

import java.io. * public class Ví dụ {public static void main (String args [] throws Exception) {FileReader f = new FileReader ('filelocation') BufferedReader b = new BufferedReader (f) int i while ((i = b. read ())! = -1) {System.out.println ((char) i)} b.close () f.close ()

Sự khác biệt giữa Scanner và BufferedReader

BufferedReader Máy quét

Đồng bộ và nên được sử dụng với nhiều luồng

Không đồng bộ và không được sử dụng với nhiều luồng

Bộ nhớ đệm lớn hơn

Bộ nhớ đệm nhỏ hơn

Nhanh hơn Máy quét

Chậm hơn vì nó phân tích dữ liệu đầu vào

c ++ cách sử dụng không gian tên

Không có sự mơ hồ nào liên quan đến phương thức nextline ()

Có rất nhiều vấn đề với phương thức nextline ().

Sử dụng bộ đệm để đọc các ký tự từ luồng nhập ký tự

Nó là một trình quét văn bản đơn giản, phân tích các kiểu và chuỗi nguyên thủy

Ví dụ BufferedReader trong JDK7

import java.io. * public class Ví dụ {public static void main (String [] args) {try (BufferedReader b = new BufferedReader (new fileReader ('filename'))) {String s while ((s = b.readLine ( ))! = null) {System.out.println (s)}} catch (IOException e) {e.printStackTrace ()}}}

Đọc dữ liệu từ bảng điều khiển bằng InputStreamReader và BufferedReader trong Java

import java.io. * public class Ví dụ {public static void main (String args [] throws Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) System.out.println ('Nhập khóa học ') String course = b.readLine () System.out.osystemln (' Edureka '+ course)}}
 Đầu ra: Nhập khóa học Java Edureka Java

Đọc dữ liệu từ bảng điều khiển cho đến khi người dùng ghi dừng

import java.io. * public class Ví dụ {public static void main (String args [] throws Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) string course = '' while (! name .equals ('stop')) {System.out.println ('nhập khóa học:') khóa học = b.readLine () System.out.println ('Khóa học là:' + khóa học)} b.close () i. đóng() } }
 Đầu ra: nhập khóa học: Khóa học là: Java nhập khóa học: Khóa học là: dừng

Phần này đưa chúng ta đến phần cuối của bài viết này, nơi chúng ta đã học cách chúng ta có thể đọc các ký tự từ luồng nhập ký tự bằng cách sử dụng lớp BufferedReader trong Java. Hy vọng bạn rõ ràng với tất cả những gì đã được chia sẻ với bạn trong hướng dẫn này.

Nếu bạn thấy bài viết này về “BufferedReader trong Java” có liên quan, hãy xem một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu.

Chúng tôi ở đây để giúp bạn từng bước trong hành trình của mình và đưa ra chương trình giảng dạy được thiết kế cho sinh viên và các chuyên gia muốn trở thành Nhà phát triển Java. Khóa học được thiết kế để cung cấp cho bạn khởi đầu về lập trình Java và đào tạo bạn về cả khái niệm Java cốt lõi và nâng cao cùng với nhiều giống Ngủ đông & .

Nếu bạn gặp bất kỳ câu hỏi nào, vui lòng đặt tất cả câu hỏi của bạn trong phần nhận xét của “BufferedReader trong Java” và nhóm của chúng tôi sẽ sẵn lòng trả lời.