パッケージ org.springframework.util
クラス StreamUtils
java.lang.ObjectSE
org.springframework.util.StreamUtils
ストリームを処理するための単純なユーティリティメソッド。このクラスのコピーメソッドは、
FileCopyUtils
で定義されているものと似ていますが、影響を受けるすべてのストリームが完了時に開いたままになる点が異なります。すべてのコピー方法は、8192 バイトのブロックサイズを使用します。主にフレームワーク内で使用しますが、アプリケーションコードにも役立ちます。
- 導入:
- 3.2.2
- 作成者:
- Juergen Hoeller, Phillip Webb, Brian Clozel
- 関連事項:
フィールドサマリー
フィールドコンストラクターのサマリー
コンストラクター方法の概要
修飾子と型メソッド説明static void
copy
(byte[] in, OutputStreamSE out) 指定されたバイト配列の内容を指定された OutputStream にコピーします。static int
copy
(InputStreamSE in, OutputStreamSE out) 指定された InputStream の内容を指定された OutputStream にコピーします。static void
copy
(StringSE in, CharsetSE charset, OutputStreamSE out) 指定された文字列の内容を指定された OutputStream にコピーします。static long
copyRange
(InputStreamSE in, OutputStreamSE out, long start, long end) 特定の InputStream のコンテンツの範囲を特定の OutputStream にコピーします。static byte[]
指定された InputStream の内容を新しいバイト配列にコピーします。static StringSE
copyToString
(ByteArrayOutputStreamSE baos, CharsetSE charset) 指定されたByteArrayOutputStream
SE の内容をString
SE にコピーします。static StringSE
copyToString
(InputStreamSE in, CharsetSE charset) 指定された InputStream の内容を文字列にコピーします。static int
drain
(InputStreamSE in) 指定された InputStream の残りのコンテンツを排出します。static InputStreamSE
使用すべきではありません。static InputStreamSE
close()
を呼び出しても効果がない、指定されたInputStream
SE のバリアントを返します。static OutputStreamSE
nonClosing
(OutputStreamSE out) close()
を呼び出しても効果がない、指定されたOutputStream
SE のバリアントを返します。
フィールドの詳細
BUFFER_SIZE
public static final int BUFFER_SIZEバイトをコピーするときに使用されるデフォルトのバッファサイズ。- 関連事項:
コンストラクターの詳細
StreamUtils
public StreamUtils()
メソッドの詳細
copyToByteArray
指定された InputStream の内容を新しいバイト配列にコピーします。終了してもストリームを開いたままにします。
- パラメーター:
in
- コピー元のストリーム (null
または空の場合があります)- 戻り値:
- コピーされた新しいバイト配列 (空の可能性あり)
- 例外:
IOExceptionSE
- I/O エラーの場合
copyToString
public static StringSE copyToString(@Nullable InputStreamSE in, CharsetSE charset) throws IOExceptionSE 指定された InputStream の内容を文字列にコピーします。終了してもストリームを開いたままにします。
- パラメーター:
in
- コピー元の InputStream (null
または空の場合があります)charset
- バイトのデコードに使用するCharset
SE- 戻り値:
- コピーされた文字列 (空の可能性あり)
- 例外:
IOExceptionSE
- I/O エラーの場合
copyToString
指定されたByteArrayOutputStream
SE の内容をString
SE にコピーします。これは
new String(baos.toByteArray(), charset)
のより効果的な同等物です。- パラメーター:
baos
- 文字列にコピーされるByteArrayOutputStream
charset
- バイトのデコードに使用するCharset
SE- 戻り値:
- コピーされた文字列 (空の可能性あり)
- 導入:
- 5.2.6
copy
指定されたバイト配列の内容を指定された OutputStream にコピーします。終了してもストリームを開いたままにします。
- パラメーター:
in
- コピー元のバイト配列out
- コピー先の OutputStream- 例外:
IOExceptionSE
- I/O エラーの場合
copy
指定された文字列の内容を指定された OutputStream にコピーします。終了してもストリームを開いたままにします。
- パラメーター:
in
- コピー元の文字列charset
- 文字セットout
- コピー先の OutputStream- 例外:
IOExceptionSE
- I/O エラーの場合
copy
指定された InputStream の内容を指定された OutputStream にコピーします。完了したら、両方のストリームを開いたままにします。
- パラメーター:
in
- コピー元の InputStreamout
- コピー先の OutputStream- 戻り値:
- コピーされたバイト数
- 例外:
IOExceptionSE
- I/O エラーの場合
copyRange
public static long copyRange(InputStreamSE in, OutputStreamSE out, long start, long end) throws IOExceptionSE 特定の InputStream のコンテンツの範囲を特定の OutputStream にコピーします。指定された範囲が InputStream の長さを超える場合、これはストリームの最後までコピーし、コピーされた実際のバイト数を返します。
完了したら、両方のストリームを開いたままにします。
- パラメーター:
in
- コピー元の InputStreamout
- コピー先の OutputStreamstart
- コピーを開始する位置end
- コピーを終了する位置- 戻り値:
- コピーされたバイト数
- 例外:
IOExceptionSE
- I/O エラーの場合- 導入:
- 4.3
drain
指定された InputStream の残りのコンテンツを排出します。完了したら InputStream を開いたままにします。
- パラメーター:
in
- InputStream を排出する- 戻り値:
- 読み込まれたバイト数
- 例外:
IOExceptionSE
- I/O エラーの場合- 導入:
- 4.3
emptyInput
使用すべきではありません。6.0 現在、InputStream.nullInputStream()
を推奨効率的な空のInputStream
SE を返します。- 戻り値:
- バイトを含まない InputStream
- 導入:
- 4.2.2
nonClosing
close()
を呼び出しても効果がない、指定されたInputStream
SE のバリアントを返します。- パラメーター:
in
- InputStream を飾る- 戻り値:
- 閉じるための呼び出しを無視する InputStream のバージョン
nonClosing
close()
を呼び出しても効果がない、指定されたOutputStream
SE のバリアントを返します。- パラメーター:
out
- OutputStream を飾る- 戻り値:
- 閉じるための呼び出しを無視する OutputStream のバージョン
InputStream.nullInputStream()
を推奨