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


Java BufferedWriter write()用法及代碼示例


Java中BufferedWriter類中的write()方法以三種方式使用:

1. Java中BufferedWriter類的write(int)方法用於一次在緩衝區寫入器流中寫入單個字符。

用法:

public void write(int ch)
            throws IOException

覆蓋:該方法覆蓋Writer類的write()方法。

參數:此方法接受單個參數ch,該參數代表要寫入的字符。



返回值:此方法不返回任何值。

異常:如果發生I /O錯誤,則此方法將引發IOException。

以下示例程序旨在說明IO包中BufferedWriter類中的write(int)方法:

程序:

// Java program to illustrate 
// BufferedWriter write(int) method 
  
import java.io.*; 
  
public class GFG { 
    public static void main(String[] args) 
        throws IOException 
    { 
  
        // Create the string Writer 
        StringWriter stringWriter 
            = new StringWriter(); 
  
        // Convert stringWriter to 
        // bufferedWriter 
        BufferedWriter buffWriter 
            = new BufferedWriter( 
                stringWriter); 
  
        // Write "G" to buffer writer 
        buffWriter.write(71); 
  
        // Write "E" to buffer writer 
        buffWriter.write(69); 
  
        // Write "E" to buffer writer 
        buffWriter.write(69); 
  
        // Write "K" to buffer writer 
        buffWriter.write(75); 
  
        // Write "S" to buffer writer 
        buffWriter.write(83); 
  
        buffWriter.flush(); 
  
        System.out.println( 
            stringWriter.getBuffer()); 
    } 
}
輸出:
GEEKS

2. Java中BufferedWriter類的write(String s,int off,int len)方法用於在緩衝區寫入器流中寫入一部分作為參數傳遞的字符串。

用法:

public void write(String s,
                  int off,
                  int len)
           throws IOException

覆蓋:該方法覆蓋Writer類的write()方法。



參數:此方法接受三個參數:

  • s-它代表字符串,其中一部分要寫入。
  • off-它代表開始寫入的字符串中的索引。
  • len-它表示要寫入的字符串部分的長度。

返回值:此方法不返回任何值。

異常:

  • IndexOutOfBoundsException-如果傳遞的索引為負或傳遞的部分長度大於給定字符串的長度,則此方法將引發IndexOutOfBoundsException。
  • IOException-如果發生IO錯誤,則此方法將引發IOException。

注意:如果字符串(len)的部分長度為負或index為負,則此方法應引發IndexOutOfBoundsException,但在這些情況下,此方法不會引發此類異常。在這種情況下,它不寫任何字符,而不會引發異常。

以下示例程序旨在說明IO包中BufferedWriter類中的write(String)方法:

程序:

// Java program to illustrate 
// BufferedWriter write(String) method 
  
import java.io.*; 
  
public class GFG { 
    public static void main(String[] args) 
        throws IOException 
    { 
  
        // Create the string Writer 
        StringWriter stringWriter 
            = new StringWriter(); 
  
        // Convert stringWriter to 
        // bufferedWriter 
        BufferedWriter buffWriter 
            = new BufferedWriter( 
                stringWriter); 
  
        // Write "GEEKS" to buffer writer 
        buffWriter.write( 
            "GEEKSFORGEEKS", 0, 5); 
  
        buffWriter.flush(); 
  
        System.out.println( 
            stringWriter.getBuffer()); 
    } 
}
輸出:
GEEKS

3. Java中BufferedWriter類的write(char [] cbuf,int off,int len)方法用於在緩衝區寫入器流中寫入一部分作為參數傳遞的字符數組。此方法通常將數組中的字符存儲到流中,並將緩衝區刷新到主流。當緩衝區的長度等於數組的長度時,它可以直接使用主流。

用法:

public void write(char[ ] cbuf,
                  int off,
                  int len)
           throws IOException

指定者:該方法由Writer類的write()方法指定。



參數:此方法接受三個參數:

  • cbuf-它代表字符數組,其中一部分要寫入。
  • off-它表示從其開始寫入的數組的索引。
  • len-它表示要寫入的數組部分的長度。

返回值:此方法不返回任何值。

異常:

  • IndexOutOfBoundsException-如果傳遞的索引為負或傳遞的部分長度大於給定字符數組的長度,則此方法將引發IndexOutOfBoundsException。
  • IOException-如果發生IO錯誤,則此方法將引發IOException。

以下示例程序旨在說明IO包中BufferedWriter類中的write(char [])方法:

程序:

// Java program to illustrate 
// BufferedWriter write(char[ ]) method 
  
import java.io.*; 
  
public class GFG { 
    public static void main(String[] args) 
        throws IOException 
    { 
  
        // Create the string Writer 
        StringWriter stringWriter 
            = new StringWriter(); 
  
        // Convert stringWriter to 
        // bufferedWriter 
        BufferedWriter buffWriter 
            = new BufferedWriter( 
                stringWriter); 
        // Create character array 
        char cbuf[] = { 'G', 'E', 'E', 'K', 
                        'S', 'F', 'O', 'R' }; 
  
        // Write "GEEKS" to buffer writer 
        buffWriter.write(cbuf, 0, 5); 
  
        // Write "FOR" to buffer writer 
        buffWriter.write(cbuf, 5, 3); 
  
        // Again write "GEEKS" to buffer writer 
        buffWriter.write(cbuf, 0, 5); 
  
        buffWriter.flush(); 
  
        System.out.println( 
            stringWriter.getBuffer()); 
    } 
}
輸出:
GEEKSFORGEEKS

參考文獻:
1. https://docs.oracle.com/javase/10/docs/api/java/io/BufferedWriter.html#write(int)
2. https://docs.oracle.com/javase/10/docs/api/java/io/BufferedWriter.html#write(java.lang.String, int, int)
3. https://docs.oracle.com/javase/10/docs/api/java/io/BufferedWriter.html#write(char%5B%5D, int, int)




相關用法


注:本文由純淨天空篩選整理自pp_pankaj大神的英文原創作品 BufferedWriter write() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。