6. Java IO: Byte & Char Arrays

1424 ワード

このチュートリアルのディレクトリを表示するには、「JavaIOチュートリアルディレクトリ貼り付け」をクリックします.
Javaアプリケーションでは、バイト配列と文字配列がプログラム内にデータを一時的に格納するためによく使用されます.通常のデータ・ソースまたはデータ・宛先でもあります.プログラムの実行時にファイルコンテンツにアクセスする必要がある場合は、ファイルを配列にロードすることもできます.もちろん、配列の下付き文字でファイルの内容にアクセスできます.InputStreamまたはReaderから特定のデータを読み取り、配列を使用しないコンポーネントを設計した場合、どうすればいいですか?
配列をInputStreamまたはReaderで読み込む
配列からデータを読み出すコンポーネントを書くには、ByteArrayInputStreamまたはCharArrayReaderでバイトまたは文字配列をパッケージする必要があります.これにより,配列中のバイトや文字はパッケージされたstreamやreaderで読み取ることができる.ここには簡単な例があります.
byte[] bytes = new byte[1024];

//write data into byte array...

InputStream input = new ByteArrayInputStream(bytes);

//read first byte
int data = input.read();
while(data != -1) {
    //do something with data

    //read next byte
    data = input.read();
}

このdemoは文字配列にも同様に適用される.CharArrayReaderを利用してこのことをするだけで、あなたは完成することができます.
OutputStreamまたはWriterによる配列への書き込み
同じようにデータを書くには、ByteArrayOutputStreamやCharArrayWriterを使うことができます.あなたがしなければならないことは、ByteArrayOutputStreamまたはCharArrayWriterを作成し、他のstreamやwriterを使うようにデータを書くことです.すべてのデータが書き終わると、oByteArray()またはtoCharArrayメソッドを簡単に呼び出すだけで、すべてのデータを配列で返すことができます.ここには簡単な例があります.
ByteArrayOutputStream output = new ByteArrayOutputStream();

output.write("This text is converted to bytes".getBytes("UTF-8"));

byte[] bytes = output.toByteArray();

このdemoは文字配列にも同様に適用される.CharArrayWriterを利用してこのことをするだけで、あなたは完成することができます.