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


Java CharArrayReader read(CharBuffer)用法及代码示例


Java中CharArrayReader类的read(CharBuffer)方法用于将指定的字符读取到CharBuffer实例中。此方法将流阻塞到:

  • 它已从流中获取了一些输入。
  • 发生了一些IOException
  • 阅读时已到达流的末尾。

用法:

public int read(CharBuffer charBuffer)

参数:此方法接受强制参数charBuffer,该参数是要在Stream中写入的CharBuffer实例。


返回值:此方法返回一个整数值,该整数值是从流中读取的字符数。如果未读取任何字符,则返回-1。

异常:此方法引发以下异常:

  • IOException:输入输出时发生错误。
  • NullPointerException :如果要填充的CharBuffer实例为null
  • ReadOnlyBufferException:如果要填充的CharBuffer实例是只读缓冲区

下面的方法说明了read(CharBuffer)方法的用法方式:

示例1:

// Java program to demonstrate 
// CharArrayReader read(CharBuffer) method 
  
import java.io.*; 
import java.util.*; 
import java.nio.CharBuffer; 
  
class GFG { 
    public static void main(String[] args) 
    { 
  
        try { 
  
            char[] str = { 'G', 'e', 'e', 'k', 's', 
                           'F', 'o', 'r', 
                           'G', 'e', 'e', 'k', 's' }; 
  
            // Create a CharArrayReader instance 
            CharArrayReader reader 
                = new CharArrayReader(str); 
  
            // Get the CharBuffer instance 
            // to be read from the stream 
            CharBuffer charBuffer 
                = CharBuffer.allocate(5); 
  
            // Read the charBuffer 
            // to this reader using read() method 
            // This will put the str in the stream 
            // till it is read by the reader 
            reader.read(charBuffer); 
  
            // Print the read charBuffer 
            System.out.println(charBuffer 
                                   .flip() 
                                   .toString()); 
  
            reader.close(); 
        } 
        catch (Exception e) { 
            System.out.println(e); 
        } 
    } 
}
输出:
Geeks

示例2:

// Java program to demonstrate 
// CharArrayReader read(CharBuffer) method 
  
import java.io.*; 
import java.util.*; 
import java.nio.CharBuffer; 
  
class GFG { 
    public static void main(String[] args) 
    { 
  
        try { 
  
            char[] str = { 'G', 'e', 'e', 'k', 's', 
                           'F', 'o', 'r', 
                           'G', 'e', 'e', 'k', 's' }; 
  
            // Create a CharArrayReader instance 
            CharArrayReader reader 
                = new CharArrayReader(str); 
  
            // Get the CharBuffer instance 
            // to be read from the stream 
            CharBuffer charBuffer 
                = CharBuffer 
                      .allocate(13); 
  
            // Read the charBuffer 
            // to this reader using read() method 
            // This will put the str in the stream 
            // till it is read by the reader 
            reader.read(charBuffer); 
  
            // Print the read charBuffer 
            System.out.println(charBuffer 
                                   .flip() 
                                   .toString()); 
  
            reader.close(); 
        } 
        catch (Exception e) { 
            System.out.println(e); 
        } 
    } 
}
输出:
GeeksForGeeks

参考: https://docs.oracle.com/javase/9/docs/api/java/io/Reader.html#read-java.nio.CharBuffer-



相关用法


注:本文由纯净天空筛选整理自Code_r大神的英文原创作品 CharArrayReader read(CharBuffer) method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。