首页 > 编程语言 > 详细

JavaSE——转换流和缓冲流

时间:2016-12-05 19:06:12      阅读:253      评论:0      收藏:0      [点我收藏+]

转换流:

技术分享

类 InputStreamReader(转换流):

InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。

每次调用 InputStreamReader 中的一个 read() 方法都会导致从底层输入流读取一个或多个字节。要启用从字节到字符的有效转换,可以提前从底层流读取更多的字节,使其超过满足当前读取操作所需的字节。

为了达到最高效率,可要考虑在 BufferedReader 内包装 InputStreamReader。例如:

 BufferedReader in
   = new BufferedReader(new InputStreamReader(System.in));
 

技术分享

一些常用方法:

 void close()
          关闭该流并释放与之关联的所有资源。
 String getEncoding()
          返回此流使用的字符编码的名称。
 int read()
          读取单个字符。
 int read(char[] cbuf, int offset, int length)
          将字符读入数组中的某一部分。
 boolean ready()
          判断此流是否已经准备好用于读取。

 

 

缓冲流:

技术分享

 

类 BufferdReader:

从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。

可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。

技术分享

一些常用方法:

 void close()
          关闭该流并释放与之关联的所有资源。
 void mark(int readAheadLimit)
          标记流中的当前位置。
 boolean markSupported()
          判断此流是否支持 mark() 操作(它一定支持)。
 int read()
          读取单个字符。
 int read(char[] cbuf, int off, int len)
          将字符读入数组的某一部分。
 String readLine()
          读取一个文本行。

JavaSE——转换流和缓冲流

原文:http://www.cnblogs.com/linlin0/p/6134653.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!