openplanning

Hướng dẫn và ví dụ Java ByteArrayInputStream

Xem thêm các chuyên mục:

Nhóm phát triển của chúng tôi vừa ra mắt website langlearning.net học tiếng Anh, Nga, Đức, Pháp, Việt, Trung, Hàn, Nhật, ... miễn phí cho tất cả mọi người.
Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất.
Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi.
Hãy theo dõi chúng tôi trên Fanpage để nhận được thông báo mỗi khi có bài viết mới. Facebook

1- ByteArrayInputStream

ByteArrayInputStream là lớp con của InputStream. Đúng với cái tên, ByteArrayInputStream được sử dụng để đọc một mảng byte theo cách của một InputStream.
ByteArrayInputStream constructors

ByteArrayInputStream​(byte[] buf)

ByteArrayInputStream​(byte[] buf, int offset, int length)
Constructor ByteArrayInputStream​(byte[] buf) tạo một đối tượng ByteArrayInputStream để đọc một mảng byte.
Constructor ByteArrayInputStream​(byte[] buf, int offset, int length) tạo đối tượng ByteArrayInputStream để đọc một mảng byte từ chỉ số offset tới offset+length.
Tất cả các phương thức của ByteArrayInputStream đều được thừa kế từ InputStream.
Methods

int available()  
void close()  
void mark​(int readAheadLimit)  
boolean markSupported()  
int read()  
int read​(byte[] b, int off, int len)  
void reset()  
long skip​(long n)

2- Examples

Ví dụ: Đọc một mảng byte theo cách của một InputStream:
ByteArrayInputStreamEx1.java

package org.o7planning.bytearrayinputstream.ex;

import java.io.ByteArrayInputStream;
import java.io.IOException;

public class ByteArrayInputStreamEx1 {

    public static void main(String[] args) throws IOException {

        byte[] byteArray = new byte[] {84, 104, 105, 115, 32, 105, 115, 32, 116, 101, 120, 116};

        ByteArrayInputStream is = new ByteArrayInputStream(byteArray);
        
        int b;
        while((b = is.read()) != -1) {
            // Convert byte to character.
            char ch = (char) b;
            System.out.println(b + " --> " + ch);
        }
    }
}
Output:

84 --> T
104 --> h
105 --> i
115 --> s
32 -->  
105 --> i
115 --> s
32 -->  
116 --> t
101 --> e
120 --> x
116 --> t
Về cơ bản tất cả các phương thức của ByteArrayInputStream đều thừa kế từ InputStream, vì vậy bạn có thể tìm thấy nhiều ví dụ hơn về cách sử dụng các phương thức này trong bài viết dưới đây:

Xem thêm các chuyên mục: