JavaA2Z

KAB-studio > プログラミング > JavaA2Z > StringWriterとは

StringWriter

日本語 文字列書記
英語 string writer
ふりがな すとりんぐらいたー
フリガナ ストリングライター

解説

J2SEに含まれるクラスのひとつ。パッケージも含めたクラス名java.io.StringWriter。
ストリームクラスWriterクラスサブクラスであり、文字出力ストリームクラスである。
文字出力ストリームクラスの中では「出力先」に位置する。
対になる入力側のクラスStringReaderクラスである。
 
StringBufferクラス文字を出力する文字出力ストリームクラス
内部にStringBufferクラスフィールドを持ち、出力した文字をこのフィールドに追記していく。
ストリームの操作で文字列を追加していく場合に使用する。
機能的にはCharArrayWriterクラスとほぼ同じ。
 
StringWriterクラスインスタンスを作成することで、StringBufferクラスインスタンスも作成しフィールドとして持つ。
StringWriterクラスのwrite()メソッドで出力する。write()メソッドは、intchar配列Stringクラス等にオーバーロードされているため、たいがいの形式の文字列を渡すことができる。
引数intのwrite()メソッドは、実際にはcharの値を受け取る。charの範囲、つまり0x00000000~0x0000FFFFの範囲の値のみを受け取り、それより大きな値は右4バイトのみ取り出し出力する。
内部のStringBufferクラス文字列は、toString()メソッドで取得することができる。また、getBuffer()メソッドStringBufferクラスそのものを取得することもできる。
処理終了後はclose()メソッドを呼び終了処理をう。

参考サイト


(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
import java.io.StringWriter;
import java.io.IOException;

public class Sample
{
    public static void main( String[] args )
    {
        StringWriter stringWriter = null;
        try
        {
            // StringWriterクラスを作ります。
            stringWriter = new StringWriter();

            // 文字を書き込みます。
            stringWriter.write( 'あ' );
            stringWriter.write( 'い' );
            stringWriter.write( 'う' );
            // 文字列を書き込むこともできます。
            stringWriter.write( "えお" );

            // 出力した文字を文字列として取得します。
            String string = stringWriter.toString();
            System.out.println( string );
            // あいうえお

            // このように、文字をStringWriterクラスの中に
            // 出力することができます。

            // 内部のStringBufferクラスを取り出すこともできます。
            StringBuffer stringBuffer = stringWriter.getBuffer();
            string = stringBuffer.toString();
            System.out.println( string );
            // あいうえお
        }
        finally
        {
            // 最後にclose()メソッドを呼んで後処理をします。
            // また、これは必ず行うため、finally内で行います。
            try
            {
                if( stringWriter != null )
                {
                    stringWriter.close();
                }
            }
            catch( IOException e )
            {
                e.printStackTrace();
            }
        }
    }
}
// Sample.java
import java.io.StringWriter;
import java.io.IOException;

public class Sample
{
    public static void main( String[] args )
    {
        StringWriter stringWriter = null;
        try
        {
            // StringWriterクラスを作ります。
            stringWriter = new StringWriter();

            // 文字を書き込みます。
            stringWriter.write( 'あ' );
            stringWriter.write( 'い' );
            stringWriter.write( 'う' );
            // 文字列を書き込むこともできます。
            stringWriter.write( "えお" );

            // 出力した文字を文字列として取得します。
            String string = stringWriter.toString();
            System.out.println( string );
            // あいうえお

            // このように、文字をStringWriterクラスの中に
            // 出力することができます。

            // 内部のStringBufferクラスを取り出すこともできます。
            StringBuffer stringBuffer = stringWriter.getBuffer();
            string = stringBuffer.toString();
            System.out.println( string );
            // あいうえお
        }
        finally
        {
            // 最後にclose()メソッドを呼んで後処理をします。
            // また、これは必ず行うため、finally内で行います。
            try
            {
                if( stringWriter != null )
                {
                    stringWriter.close();
                }
            }
            catch( IOException e )
            {
                e.printStackTrace();
            }
        }
    }
}

この単語を含むページ

「みだし」に含まれているページ

「解説」に含まれているページ

「サンプルプログラムとか」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2005/11/10
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。