當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Java.io.StringWriter用法及代碼示例


Java StringWriter 類根據字符串緩衝區流的字符創建字符串。 Java 中StringWriter 類的方法也可以在關閉 Stream 後調用,因為這不會引發 IO 異常。

Java StringWriter 類中的聲明

public class StringWriter
  extends Writer

Java 中StringWriter 類中的構造函數

Java中String Writer類中使用的構造函數如下:

  • StringWriter():使用字符串緩衝區的初始或默認大小創建新的StringWriter
  • StringWriter(int 大小):使用提到的字符串緩衝區大小創建一個新的StringWriter

Java StringWriter 類中的方法

下麵提到了 Java StringWriter 類涉及的所有方法:

Method

Description

append(char Sw) 將單個字符追加到字符串緩衝區。
追加(CharSequence char_sq) 將指定的字符序列附加到字符串緩衝區。
追加(CharSequence,char_sq,int開始,int結束) 將字符序列的指定部分追加到字符串緩衝區。
flush() 刷新StringWriter流。
getBuffer() 返回 StringWriter 的StringBuffer。
write(int char) 將單個字符寫入字符串緩衝區。
write(String str) 將字符串寫入字符串緩衝區。
write(String str, int offset, int maxlen) 將字符串的某些部分寫入字符串緩衝區。
write(char[] carray, int 偏移量, int maxlen) 將字符數組的某些部分寫入字符串緩衝區。
toString() 以字符串形式返回字符串緩衝區的值
close() closes String Buffer。由於該方法還可以在關閉String Buffer之後調用,所以它不起作用。

1. 寫(int char)

java.io.StringWriter.write(int char) 將單個字符寫入字符串緩衝區。

Syntax: public void write(int char)

Parameters : 
char : int value of the character to be written.

Return  :
void

2. 寫入(字符串str)

java.io.StringWriter.write(String str)將字符串寫入字符串緩衝區。

Syntax: public void write(String str)

Parameters : 
str : string to be written to the String Buffer.

Return  :
void

3. 寫入(字符串str,int偏移量,int maxlen)

java.io.StringWriter.write(String str, int offset, int maxlen)將字符串的某些部分寫入字符串緩衝區。

Syntax: public void write(String str, int offset, int maxlen)

Parameters : 
str : string to be written to the String Buffer.
offset : start position of the String
maxlen : maximum length upto which string has to written

Return  :
void

4. write(char[] carray, int 偏移量, int maxlen)

java.io.StringWriter.write(char[] carray, int 偏移量, int maxlen)將字符數組的某些部分寫入字符串緩衝區。

Syntax: public void write(char[] carray, int offset, int maxlen)

Parameters : 
carray : character to be written to the String Buffer
offset : start position of the character array
maxlen : maximum no. of the character of the carray has to written

Return  :
void

5.toString()

java.io.StringWriter.toString() 以字符串形式返回字符串緩衝區的值。

Syntax: public String toString()

Parameters : 
-----------

Return  :
string value of the String Buffer

6.close()

java.io.StringWriter.close() 關閉字符串緩衝區。由於該方法也可以在關閉字符串緩衝區後調用,因此它不起作用。

Syntax: public void close()

Parameters : 
-----------

Return  :
void

7. 追加(char Sw)

java.io.StringWriter.append(char Sw) 將單個字符追加到字符串緩衝區。

Syntax: public StringWriter append(char Sw)

Parameters : 
Sw : character to be append

Return  :
StringWriter

8. 追加(CharSequence char_sq)

java.io.StringWriter.append(CharSequence char_sq) 將指定的字符序列附加到字符串緩衝區。

Syntax: public StringWriter append(CharSequence char_sq)

Parameters : 
char_sq : Character sequence to append. 

Return  :
StringWriter, if char sequence is null, then NULL appends to the StringWriter.

9. 追加(CharSequence char_sq, int開始,int結束)

java.io.StringWriter.append(CharSequence char_sq, int start, int end) 將字符序列的指定部分追加到字符串緩衝區。

Syntax: public StringWriter append(CharSequence char_sq, int start, int end)

Parameters : 
char_sq : Character sequence to append.
start : start of character in the Char Sequence
end : end of character in the Char Sequence

Return  :
void

10.flush()

java.io.StringWriter.flush() 刷新StringWriter 流。

Syntax: public void flush()

Parameters : 
-----

Return  :
void

11.getBuffer()

java.io.StringWriter.getBuffer()返回StringWriter的字符串緩衝區。

Syntax: public StringBuffer getBuffer()

Parameters : 
-----------

Return  :
String Buffer with its current value.

示例

Java 程序說明了 StringWriter 類方法的使用:

Java


// Java program illustrating the working of StringWriter
// class methods write(int char), write(String str), close()
// write(String str, int offset, int maxlen), toString()
// write(char[] carray, int offset, int maxlen)
import java.io.*;
public class NewClass {
    public static void main(String[] args)
        throws IOException
    {
        // Initializing String Writer
        StringWriter geek_writer1 = new StringWriter();
        StringWriter geek_writer2 = new StringWriter();
        StringWriter geek_writer3 = new StringWriter();
        StringWriter geek_writer4 = new StringWriter();
        // Use of write(int char) : to write a character
        geek_writer1.write(71);
        geek_writer1.write(70);
        geek_writer1.write(71);
        // Use of toString() : Value written by write(int
        // char)
        System.out.println("Using write(int char) : "
                           + geek_writer1.toString());
        String str = "Hello Geeks";
        // Use of write(String str) : to write string
        geek_writer2.write(str);
        // Value written by write(String str)
        System.out.println("Using write(String str) : "
                           + geek_writer2.toString());
        // Use of write(String str, int offset, int maxlen)
        // : to write part of string
        geek_writer3.write(str, 2, 4);
        geek_writer3.write(str, 5, 6);
        // Value written by write(String str, int offset,
        // int maxlen)
        System.out.println(
            "Using write(str, offset, maxlen) : "
            + geek_writer3.toString());
        try {
            // Use of Close() method : to close the
            // geek_writer4 But no use as String Writer
            // method is still working with it
            geek_writer4.close();
        }
        catch (IOException except) {
            System.out.println("ERROR");
            except.printStackTrace();
            ;
        }
        // Initializing character array
        char[] carray = str.toCharArray();
        // Use of write(char[] carray, int offset, int
        // maxlen): to write part of char array
        geek_writer4.write(carray, 4, 6);
        // Value written by write(String str, int offset,
        // int maxlen)
        System.out.println(
            "Using write(carray, offset, maxlen) : "
            + geek_writer4.toString());
    }
}

輸出

Using write(int char) : GFG
Using write(String str) : Hello Geeks
Using write(str, offset, maxlen) : llo  Geeks
Using write(carray, offset, maxlen) : o Geek

說明 StringWriter 類方法的使用的 Java 程序:append(CharSequence char_sq)、append(char Sw)、append(CharSequence char_sq、int start、int end)、flush()、getgetBuffer()

Java


// Java program illustrating the working of StringWriter
// class methods append(CharSequence char_sq), append(char
// Sw) append(CharSequence char_sq, int start,int end)
// flush(), getgetBuffer()
import java.io.*;
public class NewClass {
    public static void main(String[] args)
        throws IOException
    {
        // Initializing String Writer
        StringWriter geek_writer1 = new StringWriter();
        StringWriter geek_writer2 = new StringWriter();
        StringWriter geek_writer3 = new StringWriter();
        // Use of write(int char) : to write a character
        geek_writer1.write(71);
        geek_writer1.write(70);
        geek_writer1.write(71);
        // Use of toString() : Value written by write(int
        // char)
        System.out.println("Using write(int char) : "
                           + geek_writer1.toString());
        // Using flush() method
        geek_writer1.flush();
        System.out.println("Using flush() : "
                           + geek_writer1.toString());
        // Use of append(char Sw)
        System.out.println("append(char Sw) : "
                           + geek_writer1.append(" 1GFG1"));
        // Use of getBuffer() :
        System.out.println("Using geek_writer1 : "
                           + geek_writer1.getBuffer());
        // Initializing Character Sequence
        CharSequence char_sq1 = "1 Hello 1";
        CharSequence char_sq2 = " : 2 Geeks 2";
        // Use of append(CharSequence char_sq)
        geek_writer2.append(char_sq1);
        geek_writer2.append(char_sq2);
        System.out.println("append(char_sq) : "
                           + geek_writer2.toString());
        // Use of append(CharSequence char_sq,int start,int
        // end)
        geek_writer3.append(char_sq1, 0, 3);
        geek_writer3.append(char_sq2, 3, 6);
        System.out.println("append(char_sq,start,end) : "
                           + geek_writer3.toString());
    }
}

輸出

Using write(int char) : GFG
Using flush() : GFG
append(char Sw) : GFG 1GFG1
Using geek_writer1 : GFG 1GFG1
append(char_sq) : 1 Hello 1 : 2 Geeks 2
append(char_sq,start,end) : 1 H2 G


相關用法


注:本文由純淨天空篩選整理自佚名大神的英文原創作品 Java.io.StringWriter class in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。