当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Java.io.Writer用法及代码示例


java.io.Writer 类是一个抽象类。它用于写入字符流。

Java 中 Writer 类的声明

public abstract class Writer
  extends Object
    implements Appendable, Closeable, Flushable

Java Writer 类的构造函数

  • 受保护Writer():创建一个新的字符流,它本身可以在编写器上同步。
  • 受保护的作家(对象 obj):创建一个新的字符流,它本身可以在给定对象上同步 - ‘obj’。

Java Writer 类的方法

有一些与 Java Writer 类相关的方法,如下所述:

Method

Description

append(char SW) 向 writer 追加一个字符
追加(CharSequence char_sq) 将指定的字符序列附加到 writer
追加(CharSequence char_sq,int开始,int结束) 将字符序列的指定部分附加到 writer
flush()

刷新写入器流。

刷新一个流调用将刷新链中的所有其他缓冲区。

write(int char) 将单个字符写入字符流。
write(string str) 将字符串写入字符流。
write(string str, int offset , int maxlen) 将字符串的某些部分写入字符串。
写(char[] 载体) 将字符数组写入字符流。
write(char[] carray, int 偏移量, int maxlen) 将字符数组的某些部分写入字符流。
close() 关闭字符串缓冲区。因为,关闭字符流,首先刷新它。

1. 写(int char)

java.io.Writer.write(int char) 将单个字符写入字符流。正在写入的字符包含在 ‘char’ 整数值的 16 个低位中,其余 16 个高位将被该方法忽略。

Syntax: public void write(int char)

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

Return  :
void

Exception :
-> IOException : if in case I/O error occurs.

2. 写入(字符串str):

java.io.Writer.write(String str) 将字符串写入字符流。

Syntax: public void write(String str)

Parameters : 
str : string to be written to the character stream.

Return  :
void

Exception :
-> IOException : if in case I/O error occurs.

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

java.io.Writer.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 character stream.
offset : start position of the String
maxlen : maximum length upto which string has to written

Return  :
void

Exception :
-> IOException : if in case I/O error occurs.
-> IndexOutOfBoundsException : if offset is -ve or offset + maxlen = -ve || > maxlen 

4. write(char[] 数组)

java.io.Writer.write(char[] carray) 将字符数组写入字符流。

Syntax: public void write(char[] carray)

Parameters : 
carray : character array to be written to the character stream

Return  :
void

Exception :
-> IOException : if in case I/O error occurs. 

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

java.io.Writer.write(char[] carray, int offset, int maxlen) 将字符数组的某些部分写入字符流。

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

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

Return  :
void

Exception :
-> IOException : if in case I/O error occurs.

6.close()

java.io.Writer.close() 关闭字符流,首先刷新它。

Syntax: public abstract void close()

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

Return  :
void

Exception :
-> IOException : if in case I/O error occurs. 

7.flush()

java.io.Writer.flush() 刷新 Writer 流。刷新一个流调用将刷新链中的所有其他缓冲区。

Syntax: public void flush()

Parameters : 
-----

Return  :
void

Exception :
-> IOException : if in case I/O error occurs.

8. 追加(char Sw)

java.io.Writer.append(char Sw) 将单个字符追加到 Writer 中。

Syntax: public Writer append(char Sw)

Parameters : 
Sw : character to be append

Return  :
Writer

Exception :
-> IOException : if in case I/O error occurs.

9. 追加(CharSequence char_sq)

java.io.Writer.append(CharSequence char_sq) 将指定的字符序列附加到 Writer 中。

Syntax: public Writer append(CharSequence char_sq)

Parameters : 
char_sq : Character sequence to append. 

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

Exception :
-> IOException : if in case I/O error occurs. 

10.追加(CharSequence char_sq,int开始,int结束)

java.io.Writer.append(CharSequence char_sq, int 开始, int 结束)将字符序列的指定部分附加到 Writer。

Syntax: public Writer 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

Exception :
-> IOException : if in case I/O error occurs.
-> IndexOutOfBoundsException : if start or end are -ve or start > end or 
                                  end > char_sq.length

Java Writer 类示例

示例 1:

Java


// Java program illustrating the working of Writer class
// methods write(int char), write(String str), close()
// write(String str, int offset, int maxlen), flush()
// write(char[] carray, int offset, int maxlen),
// write(char[] carray)
import java.io.*;
public class NewClass {
    public static void main(String[] args)
        throws IOException
    {
        char[] carray = { 'G', 'E', 'E', 'K', 'S' };
        // Initializing Writer
        Writer geek_writer1 = new PrintWriter(System.out);
        Writer geek_writer2 = new PrintWriter(System.out);
        Writer geek_writer3 = new PrintWriter(System.out);
        Writer geek_writer4 = new PrintWriter(System.out);
        Writer geek_writer5 = new PrintWriter(System.out);
        // Use of write(int char) : to write a character
        geek_writer1.write(71);
        geek_writer1.write(70);
        geek_writer1.write(71);
        // Use of flush() method
        System.out.print("Using write(int char[]) : ");
        geek_writer1.flush();
        String str = "Hello Geeks";
        // Use of write(String str) : to write string
        geek_writer2.write(str);
        // Value written by write(String str)
        System.out.print("\nUsing write(String str) : ");
        geek_writer2.flush();
        // 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.print(
            "\nUsing write(str, offset, maxlen) : ");
        geek_writer3.flush();
        geek_writer4.write(carray);
        System.out.print("\nUsing write(char[] carray) : ");
        geek_writer4.flush();
        // Use of write(char[] carray, int offset, int
        // maxlen): to write part of char array
        geek_writer5.write(carray, 1, 3);
        // Value written by write(String str, int offset,
        // int maxlen)
        System.out.print(
            "\nUsing write(carray, offset, maxlen) : ");
        geek_writer5.flush();
        // Use of close() method
        geek_writer1.close();
        geek_writer2.close();
        geek_writer3.close();
        geek_writer4.close();
        geek_writer5.close();
    }
}
输出
Using write(int char[]) : GFG
Using write(String str) : Hello Geeks
Using write(str, offset, maxlen) : llo  Geeks
Using write(char[] carray) : GEEKS
Using write(carray, offset, maxlen) : EEK

示例 2:

Java


// Java program illustrating the working of Writer class
// methods append(CharSequence char_sq), append(char Sw)
// append(CharSequence char_sq, int start,int end)
// flush()
import java.io.*;
public class NewClass {
    public static void main(String[] args)
        throws IOException
    {
        // Initializing String Writer
        Writer geek_writer1 = new PrintWriter(System.out);
        Writer geek_writer2 = new PrintWriter(System.out);
        Writer geek_writer3 = new PrintWriter(System.out);
        // Use of write(int char) : to write a character
        geek_writer1.append('G');
        geek_writer1.append('G');
        geek_writer1.append('G');
        geek_writer1.append('G');
        geek_writer1.append('G');
        // Use of append(char Sw)
        System.out.print("append(char Sw) : ");
        geek_writer1.flush();
        // 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.print("\nappend(char_sq) : ");
        geek_writer2.flush();
        // 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.print("\nappend(char_sq,start,end) : ");
        geek_writer3.flush();
    }
}
输出
append(char Sw) : GGGGG
append(char_sq) : 1 Hello 1 : 2 Geeks 2
append(char_sq,start,end) : 1 H2 G


相关用法


注:本文由纯净天空筛选整理自佚名大神的英文原创作品 Java.io.Writer Class in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。