モジュール java.base
パッケージ java.io

クラスWriter

    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      protected Object lock
      このストリームに対する処理の同期に使用するオブジェクトです。
    • コンストラクタのサマリー

      コンストラクタ 
      修飾子 コンストラクタ 説明
      protected Writer()
      ライター自体でクリティカル・セクションが同期する文字ストリーム・ライターを新しく作成します。
      protected Writer​(Object lock)
      指定されたオブジェクトでクリティカル・セクションが同期する文字ストリーム・ライターを新しく作成します。
    • フィールドの詳細

      • lock

        protected Object lock
        このストリームに対する処理の同期に使用するオブジェクトです。 効率を良くするため、文字ストリーム・オブジェクトは、ほかのオブジェクトを使ってクリティカル・セクションを保護することができます。 そのため、サブクラスではthisではなくこのフィールドのオブジェクトを使用するか、同期化したメソッドを使用するようにしてください。
    • コンストラクタの詳細

      • Writer

        protected Writer()
        ライター自体でクリティカル・セクションが同期する文字ストリーム・ライターを新しく作成します。
      • Writer

        protected Writer​(Object lock)
        指定されたオブジェクトでクリティカル・セクションが同期する文字ストリーム・ライターを新しく作成します。
        パラメータ:
        lock - 同期するオブジェクト
    • メソッドの詳細

      • nullWriter

        public static Writer nullWriter()
        すべての文字を破棄する新規Writerを返します。 返されるストリームは、最初はオープンしています。 ストリームを閉じるには、close()メソッドを呼び出します。 後からclose()をコールしても効果はありません。

        ストリームがオープンしている間、append(char) append(CharSequence)append(CharSequence, int, int)flush()write(int)write(char[])およびwrite(char[], int, int)の各メソッドでは何も実行されません。 ストリームが閉じられると、これらのメソッドはすべてIOExceptionをスローします。

        返されたWriterに対する操作の同期に使用されるobjectは指定されていません。

        戻り値:
        すべての文字を破棄するWriter
        導入されたバージョン:
        11
      • write

        public void write​(int c)
                   throws IOException
        単一の文字を書き込みます。 書き込まれる文字は、指定された整数値の下位16ビットに格納されます。上位16ビットは無視されます。

        有効な単一文字の出力をサポートするためのサブクラスでは、このメソッドをオーバーライドします。

        パラメータ:
        c - 書き込まれる文字を指定するint
        例外:
        IOException - 入出力エラーが発生した場合
      • write

        public void write​(char[] cbuf)
                   throws IOException
        文字の配列を書き込みます。
        パラメータ:
        cbuf - 書き込まれる文字の配列
        例外:
        IOException - 入出力エラーが発生した場合
      • write

        public abstract void write​(char[] cbuf,
                                   int off,
                                   int len)
                            throws IOException
        文字の配列の一部を書き込みます。
        パラメータ:
        cbuf - 文字の配列
        off - 文字の書込み開始オフセット
        len - 書き込む文字数
        例外:
        IndexOutOfBoundsException - offが負の場合、またはlenが負の場合、またはoff + lenが負の場合、または指定された配列の長さより大きい場合は、この例外がスローされます。
        IOException - 入出力エラーが発生した場合
      • write

        public void write​(String str)
                   throws IOException
        文字列を書き込みます。
        パラメータ:
        str - 書き込まれる文字列
        例外:
        IOException - 入出力エラーが発生した場合
      • write

        public void write​(String str,
                          int off,
                          int len)
                   throws IOException
        文字列の一部を書き込みます。
        実装要件:
        このクラスの実装は、指定された条件のIndexOutOfBoundsExceptionをスローします。メソッドをオーバーライドすることで別の方法が選択される可能性があります。
        パラメータ:
        str - 文字列
        off - 文字の書込み開始オフセット
        len - 書き込む文字数
        例外:
        IndexOutOfBoundsException - offが負の場合、またはlenが負の場合、またはoff + lenが負の場合、または指定された文字列の長さより大きい場合は、この例外がスローされます。
        IOException - 入出力エラーが発生した場合
      • append

        public Writer append​(CharSequence csq)
                      throws IOException
        指定された文字シーケンスをこのライターに追加します。

        このメソッドをout.append(csq)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。

             out.write(csq.toString()) 

        charシーケンスcsqに対するtoStringの指定に応じて、シーケンス全体が追加されないこともあります。 たとえば、charバッファのtoStringメソッドを呼び出した場合、そのバッファの位置とリミットによって決まる内容を持つサブシーケンスが返されます。

        定義:
        append、インタフェース: Appendable
        パラメータ:
        csq - 追加するcharシーケンス。 csqnullの場合は、このライターにnullという4文字が追加される。
        戻り値:
        このライター
        例外:
        IOException - 入出力エラーが発生した場合
        導入されたバージョン:
        1.5
      • append

        public Writer append​(CharSequence csq,
                             int start,
                             int end)
                      throws IOException
        指定された文字シーケンスのサブシーケンスをこのライターに追加します。 Appendable

        csqnullでないときに、このメソッドをout.append(csq, start, end)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。

        
             out.write(csq.subSequence(start, end).toString())
         

        定義:
        append、インタフェース: Appendable
        パラメータ:
        csq - サブシーケンスの追加元のcharシーケンス。 csqnullの場合は、csqnullという4 charが含まれているかのようにcharが追加される
        start - サブシーケンスの最初のcharのインデックス
        end - サブシーケンスの最後のcharのあとに続くcharのインデックス
        戻り値:
        このライター
        例外:
        IndexOutOfBoundsException - startまたはendが負の値の場合、startendよりも大きい場合、あるいはendcsq.length()よりも大きい場合
        IOException - 入出力エラーが発生した場合
        導入されたバージョン:
        1.5
      • append

        public Writer append​(char c)
                      throws IOException
        指定された文字をこのライターに追加します。

        このメソッドをout.append(c)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。

             out.write(c) 

        定義:
        append、インタフェース: Appendable
        パラメータ:
        c - 追加する16ビット文字
        戻り値:
        このライター
        例外:
        IOException - 入出力エラーが発生した場合
        導入されたバージョン:
        1.5
      • flush

        public abstract void flush()
                            throws IOException
        ストリームをフラッシュします。 ストリームが各種のwrite()メソッドにより書き込まれた文字をバッファに保存してある場合は、これらの文字の目的の転送先にただちに文字を書き込みます。 さらに、転送先が別の文字ストリームまたはバイト・ストリームの場合は、この送信先をフラッシュします。 つまり、1つのflush()の呼出しで、関連するWriterおよびOutputStreamのすべてのバッファをフラッシュします。

        このストリームの目的の転送先が、ベースとなるオペレーティング・システムによって提供される抽象化オブジェクト(ファイルなど)である場合、ストリームをフラッシュすることで、それまでにストリームに書き込まれたバイトがオペレーティング・システムに渡されて書き込まれることは保証されますが、ディスク・ドライブなどの物理デバイスに実際に書き込まれることは保証されません。

        定義:
        flush、インタフェース: Flushable
        例外:
        IOException - 入出力エラーが発生した場合
      • close

        public abstract void close()
                            throws IOException
        ストリームを最初にフラッシュして、閉じます。 ストリームが閉じられたあとにwrite()またはflush()を呼び出すと、IOExceptionがスローされます。 すでに閉じられているストリームを閉じても、何の影響もありません。
        定義:
        close、インタフェース: AutoCloseable
        定義:
        close、インタフェース: Closeable
        例外:
        IOException - 入出力エラーが発生した場合