Input/Output trong java

Java I/O hay Input/Output trong java được sử dụng để xử lý đầu vào và đầu ra trong java.

Java sử dụng khái niệm stream để làm cho hoạt động I/O nhanh hơn. Gói java.io chứa tất cả các lớp cần thiết cho hoạt động input và output. 

Khái niệm về stream

Một stream là một dãy dữ liệu. Trong java, một stream bao gồm các byte. Nó được gọi là stream (dòng chảy) vì nó giống như một dòng nước chảy liên tục.

Trong java, 3 stream được tạo cho chúng ta một cách tự động. Tất cả các stream này được gắn với console.

1) System.out: output stream tiêu chuẩn

2) System.in: input stream tiêu chuẩn

3) System.err: error stream tiêu chuẩn

Chúng ta hãy xem đoạn mã để in thông báo output và error tới console.

System.out.println(“simple message”); 
System.err.println(“error message”); 

Còn đoạn code dưới đây lấy giá trị input từ console

int i=System.in.read();//tra ve ma ASCII cua ky tu dau tien
System.out.println((char)i);//in ky tu lay duoc ra man hinh

Các lớp OutputStream với InputStream

Giải thích về các lớp OutputStream và InputStream được trình bày như dưới đây: 

OutputStream

Ứng dụng Java sử dụng một output stream để ghi dữ liệu đến đích, nó có thể là một tệp tin, một mảng, thiết bị ngoại vi hoặc socket.

InputStream

Ứng dụng Java sử dụng một input stream để đọc dữ liệu từ một nguồn, nó có thể là một tệp tin, một mảng, thiết bị ngoại vi hoặc socket.

Hoạt động của của Java OutputStream và InputStream được mô tả trong hình dưới đây.

Lớp OutputStream

Lớp OutputStream là một lớp trừu tượng. Nó là super class của tất cả các lớp đại diện cho một output stream của các byte. Một output stream chấp nhận ouput các byte và gửi chúng đến một nơi có thể chứa.

Các phương thức của lớp OutputStream

MethodDescription
1) public void write(int)throws IOExceptionđược sử dụng để ghi một byte đến output stream hiện tại.
2) public void write(byte[])throws IOExceptionđược sử dụng để ghi một mảng các byte đến output stream hiện tại.
3) public void flush()throws IOExceptionflush output stream hiện tại.
4) public void close()throws IOExceptionđược sử dụng để đóng output stream hiện tại.

OutputStream Hierarchy

Lớp InputStream

Lớp InputStream là một lớp trừu tượng. Nó là super class của tất cả các lớp đại diện cho một input stream của các byte.

Các phương thức của lớp InputStream

MethodDescription
1) public abstract int read()throws IOExceptionĐọc byte kế tiếp của dữ liệu từ input stream. Nó trả về -1 khi đọc đến vị trí cuối tập tin.
2) public int available()throws IOExceptionTrả về một ước tính về số byte có thể đọc được từ input stream hiện tại.
3) public void close()throws IOExceptionđược sử dụng để đóng input stream hiện tại.

InputStream Hierarchy

Bài viết liên quan

Leave a Reply

Your email address will not be published.