欢迎来到天天文库
浏览记录
ID:34278030
大小:341.66 KB
页数:5页
时间:2019-03-04
《A112Reader和Writer.pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、猿圈www.oxcoder.comReader和Writer1.1知识能力Reader/Writer处理的是字符类型的数据的流,与InputStream/OutputStream不同在于其处理流的方式是以字符为单位进行的。Reader/Writer与InputStream/OutputStream相同,也分为节点流(低级流)和处理流(高级流)。Reader:Reader与InputStream相同,用于从流中读取数据。它和InputStream的区别在于InputStream是以字节为单位操作流,而Reader是以字符为单位操作流。在Reader中定义了很多的方法
2、用于处理字符流,下面列出了一些比较常用的方法。(1)读取方法。intread():用于从流中读出一个字符,并将其返回。intread(char[]buffer):将从流中读出的字符放到字符数组buffer中,返回读出的字符数。intread(char[]buffer,intoffset,intlength):将读出的字符放到字符数组的指定offset开始的空间,每次最多读出length个字符。(2)其他方法。voidclose():关闭Reader流,在使用完Reader流后,一定记得将其关闭。booleanready():判断流是否已经准备好被读取。skip(l
3、ongn):跳过指定的n个字符。booleanmarkSupported():与InputStream中的markSupported()方法类似。voidmark(intreadAheadLimit):和InputStream中的mark()方法类似。voidreset():和InputStream中的reset()方法类似。猿圈www.oxcoder.com同样的,根据流处理的是设备还是其他的流,也可以将Reader分为低级流和高级流。低级Reader类CharArrayReader:与ByteArrayInputStream类似,只是在该类中处理的是字符数组
4、。StringReader:用于读取数据源是一个字符串的流。PipedReader:与PipedInputStream类似,区别在于它处理的是字符。FileReader:用于读取一个字符文件的类。高级Reader类BufferedReader:与BufferedInputStream类似,它处理的是字符。InputStreamReader:它是字节流和字符流之间的桥梁,读出字节并且将其按照指定的编码方式转换成字符。LineNumberReader:它可以逐行地读取数据。Reader和其派生类之间的层次关系如下图所示。图Reader和其派生类之间的层次关系Writ
5、er:Writer与OutputStream类似,用于向流中写入数据。它们之间的区别在于Writer猿圈www.oxcoder.com写入的是字符,而OutputStream写入的是字节。下面来看Writer中定义的一些方法。(1)写入方法。voidwrite(intc):将参数c的低16位组成字符写入流中。voidwrite(char[]buffer):将字符数组buffer中的字符写入流中。voidwrite(char[]buffer,intoffset,intlength):将字符数组buffer中从offset开始的length个字符写入流中。voidwr
6、ite(Stringstring):将string字符串写入流中。voidwrite(Stringstring,intoffset,intlength):将字符string中从offset开始的length个字符写入流中。(2)其他方法。voidclose():与OutputStream的close()方法类似。voidflush():与OutputStream的flush()方法类似。同样的,根据Writer操作的对象,将其分为低级Writer和高级Writer。低级Writer操纵的是设备,而高级Writer操纵的是其他的流。低级Writer类CharArr
7、ayWriter:对应于ByteArrayOutputStream,它实现了一个字符类型的缓冲。StringWriter:以字符串缓冲的形式收集字符,注意这个流不能被关闭,即调用close()方法后,还可以对它调用其他的方法而不会出现异常。PipedWriter:与PipedOutputStream类似。FileWriter:用于向字符文件输入字符内容的一个类,如果指定字符文件不存在,它可能会创建一个新的文件,这需要视不同的平台而确定。高级Writer类BufferedWriter:与BufferedOutputStream类似。OutputStreamWrit
8、er:它是
此文档下载收益归作者所有