- java.lang.Object
 -  
      
- java.io.Reader
 -  
        
- java.io.StringReader
 
 
 
-  
       
- All Implemented Interfaces:
 -  
         
Closeable,AutoCloseable,Readable 
public class StringReader extends Reader
一个字符流,其源是一个字符串。- 从以下版本开始:
 - 1.1
 
 
-  
        
       
-  
             
构造方法摘要
构造方法 Constructor 描述 StringReader(String s)创建一个新的字符串阅读器。 
-  
             
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 voidclose()关闭流并释放与之相关联的任何系统资源。voidmark(int readAheadLimit)标记流中的当前位置。booleanmarkSupported()告诉这个流是否支持mark()操作。intread()读一个字符intread(char[] cbuf, int off, int len)将字符读入数组的一部分。booleanready()告诉这个流是否准备好被读取。voidreset()将流重新设置为最近的标记,如果从未被标记,则将其重置到字符串的开头。longskip(long ns)跳过流中指定数量的字符。 
 -  
             
 
-  
        
       
-  
             
构造方法详细信息
-  
StringReader
public StringReader(String s)
创建一个新的字符串阅读器。- 参数
 -  
              
s- 提供字符流的字符串。 
 
 -  
 
-  
             
方法详细信息
-  
read
public int read() throws IOException读一个字符- 重写:
 -  
              
read在Reader - 结果
 - 字符读取,如果已经达到流的结尾,则为-1
 - 异常
 -  
              
IOException- 如果发生I / O错误 
 
-  
read
public int read(char[] cbuf, int off, int len) throws IOException将字符读入数组的一部分。- Specified by:
 -  
              
read在Reader - 参数
 -  
              
cbuf- 目的缓冲区 -  
              
off- 开始写入字符的偏移量 -  
              
len- 要读取的最大字符数 - 结果
 - 读取的字符数,如果已经达到流的结尾,则为-1
 - 异常
 -  
              
IOException- 如果发生I / O错误 -  
              
IndexOutOfBoundsException- 如果发生I / O错误 
 
-  
skip
public long skip(long ns) throws IOException跳过流中指定数量的字符。 返回跳过的字符数。ns参数可能为负,即使Reader超类的skip方法在这种情况下抛出异常。ns导致流向后跳。 负值返回值表示向后跳。 不可能从字符串的开头向后跳过。如果整个字符串已被读取或跳过,则该方法不起作用,并始终返回0。
- 重写:
 -  
              
skip在Reader - 参数
 -  
              
ns- 要跳过的字符数 - 结果
 - 实际跳过的字符数
 - 异常
 -  
              
IOException- 如果发生I / O错误 
 
-  
ready
public boolean ready() throws IOException告诉这个流是否准备好被读取。- 重写:
 -  
              
ready在Reader - 结果
 - 如果下一个read()保证不阻止输入,则为True
 - 异常
 -  
              
IOException- 如果流关闭 
 
-  
markSupported
public boolean markSupported()
告诉这个流是否支持mark()操作。- 重写:
 -  
              
markSupported在Reader - 结果
 - 当且仅当此流支持标记操作时才为真。
 
 
-  
mark
public void mark(int readAheadLimit) throws IOException标记流中的当前位置。 对reset()的后续调用将会将流重新定位到此位置。- 重写:
 -  
              
mark在Reader - 参数
 -  
              
readAheadLimit- 限制仍然保留标记时可能读取的字符数。 因为流的输入来自一个字符串,所以没有实际的限制,所以这个参数不能是负数,而是被忽略。 - 异常
 -  
              
IllegalArgumentException- 如果是readAheadLimit < 0 -  
              
IOException- 如果发生I / O错误 
 
-  
reset
public void reset() throws IOException将流重新设置为最近的标记,如果从未被标记,则将其重置到字符串的开头。- 重写:
 -  
              
reset在Reader - 异常
 -  
              
IOException- 如果发生I / O错误 
 
 -  
 
 -