category: Java
DATE : 2006/07/17 (Mon)
DATE : 2006/07/17 (Mon)
文字列を入力ストリーム(java.io.InputStream)に流すには、次のようにします。
(import 文などは省略)
ByteArrayInputStream inputStream = new ByteArrayInputStream(str.getBytes());
なお、この場合、入力ストリームにはプラットフォームで標準の文字コードが流れます。例えば、日本語 Windows の場合は Shift_JIS(正確には、MS932)です。
なお、String に格納された XML を入力ストリームに流すには、XML の文書型宣言に指定された文字エンコーディングを指定するようにします。例えば、以下のように UTF-8 が文字エンコーディングに指定されていたとします。
<?xml version="1.0" encoding="UTF-8" ?>
この場合は、次のようにして XML を入力ストリームに流します。
(import 文などは省略)
ByteArrayInputStream inputStream = new ByteArrayInputStream(str.getBytes("UTF-8"));
文字エンコーディングの宣言がない場合は、XML の仕様に沿って、UTF-8 で入力ストリームに流します。
ちなみに、この方法はごく限られた場面でしか使いません。通常は、入力ストリームではなく文字ストリーム(java.io.StringReader)を使います。文字列の入力を受け付けるメソッドが入力ストリームしか受け付けない場合にのみ、この方法が使えます。
PR
●この記事にコメントする
忍者ブログ [PR]