Java–バイト配列からリーダー
このクイックチュートリアルでは、プレーンなJava、Guava、そして最後にApache Commons IOライブラリを使用して、単純なバイト配列をReaderに変換します。
この記事は、ここBaeldungの「Java –BacktoBasic」シリーズの一部です。
1. プレーンJavaを使用
簡単なJavaの例から始めましょう。中間の文字列を介して、変換を実行します。
@Test
public void givenUsingPlainJava_whenConvertingByteArrayIntoReader_thenCorrect()
throws IOException {
byte[] initialArray = "With Java".getBytes();
Reader targetReader = new StringReader(new String(initialArray));
targetReader.close();
}
別のアプローチは、InputStreamReaderとByteArrayInputStreamを利用することです。
@Test
public void givenUsingPlainJava2_whenConvertingByteArrayIntoReader_thenCorrect()
throws IOException {
byte[] initialArray = "Hello world!".getBytes();
Reader targetReader = new InputStreamReader(new ByteArrayInputStream(initialArray));
targetReader.close();
}
2. グアバと
次へ–これも中間文字列を使用してGuavaソリューションを見てみましょう。
@Test
public void givenUsingGuava_whenConvertingByteArrayIntoReader_thenCorrect()
throws IOException {
byte[] initialArray = "With Guava".getBytes();
String bufferString = new String(initialArray);
Reader targetReader = CharSource.wrap(bufferString).openStream();
targetReader.close();
}
残念ながら、Guava ByteSource ユーティリティでは直接変換が許可されていないため、中間の文字列表現を使用する必要があります。
3. ApacheCommonsIOを使用
同様に– Commons IOも中間文字列表現を使用して、 byte[]をリーダーに変換します。
@Test
public void givenUsingCommonsIO_whenConvertingByteArrayIntoReader_thenCorrect()
throws IOException {
byte[] initialArray = "With Commons IO".getBytes();
Reader targetReader = new CharSequenceReader(new String(initialArray));
targetReader.close();
}
これで、バイト配列をJavaリーダーに変換する3つの簡単な方法ができました。 GitHubでサンプルを確認してください。