Skip to main content

Java Byte I/O - Luồng Byte trong Java

Các luồng byte được định nghĩa dùng hai lớp phân cấp. Mức trên cùng là hai lớp trừu tượng InputStreamOutputStream:

  • InputStream định nghĩa những đặc điểm chung cho những luồng nhập byte.
  • OutputStream mô tả cách xử lý của các luồng xuất byte.

java-streams.png

Các lớp con dẫn xuất từ hai lớp InputStream và OutputStream sẽ hỗ trợ chi tiết tương ứng với việc đọc ghi dữ liệu trên những thiết bị khác nhau. Đừng choáng ngợp với hàng loạt rất nhiều các lớp khác nhau. Đừng quá lo lắng, mỗi khi bạn nắm vững, sử dụng thành thạo một luồng byte nào đó thì bạn dễ dàng làm việc với những luồng còn lại.

#
Lớp luồng byte  Ý nghĩa
1 BufferedInputStream  Buffered input stream
2 BufferedOutputStream  Buffered output stream
3 ByteArrayInputStream  Input stream đọc dữ liệu từ một mảng byte
4 ByteArrayOutputStream  Output stream ghi dữ liệu đến một mảng byte
5 DataInputStream  Luồng nhập có những phương thức đọc những kiểu dữ liệu chuẩn trong java
6 DataOutputStream  Luồng xuất có những phương thức ghi những kiểu dữ liệu chuẩn trong java
7 FileInputStream  Luồng nhập cho phép đọc dữ liệu từ file
8 FileOutputStream  Luồng xuất cho phép ghi dữ liệu xuống file
9 FilterInputStream  Hiện thực lớp trừu tượng InputStream
10 FilterOutputStream  Hiện thực lớp trừu tượng OutputStream
11 InputStream  Lớp trừu tượng, là lớp cha của tất cả các lớp luồng nhập kiểu Byte
12 OutputStream  Lớp trừu tượng, là lớp cha của tất cả các lớp xuất nhập kiểu Byte
13 PipedInputStream  Luồng nhập byte kiểu ống (piped) thường phải được gắn với một luồng xuất kiểu ống.
14 PipedOutputStream  Luồng nhập byte kiểu ống (piped) thường phải được gắn với một luồng nhập kiểu ống để tạo nên một kết nối trao đổi dữ liệu kiểu ống.
15 PrintStream  Luồng xuất có chứa phương thức print() và println()
16 PushbackInputStream  Là một luồng nhập kiểu Byte mà hỗ trợ thao tác trả lại (push back) và phục hồi thao tác đọc một byte (unread)
17 RandomAccessFile  Hỗ trợ các thao tác đọc, ghi đối với file truy cập ngẫu nhiên.
18 SequenceInputStream  Là một luồng nhập được tạo nên bằng cách nối kết logic các luồng nhập khác.