JavaIO流学习总结-FilterReader和FilterWriter分析
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JavaIO流学习总结-FilterReader和FilterWriter分析,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2264字,纯文字阅读大概需要4分钟。
内容图文
![JavaIO流学习总结-FilterReader和FilterWriter分析](/upload/InfoBanner/zyjiaocheng/636/aa3892255ba0448d9ea7885015ac05fe.jpg)
参考链接:https://www.jianshu.com/p/603be2a9d94f
FilterReader和FilterWriter分析:
FilterWriter和FilterReader作为抽象类,分别继承了父类Writer和Reader抽象类,除了
简单覆盖父类方法,没有添加额外的方法。
子类:
FilterWriter没有子类,FilterReader子类只有PushBackReader类
FilterWriter与FilterReader作为字符流中一种"过滤流",没看到实际的用处,可以留作以后扩展使用。
FilterWriter源码:
public abstract class FilterWriter extends Writer { ? ? //基础字符流? protected Writer out; ? ? //有参构造方法,传入基础字符输出流
? protected FilterWriter(Writer out) {
????? super(out);
????? this.out = out;
? } ? ? //将单个字符写到输出流中
? public void write(int c) throws IOException {
????? out.write(c);
? } ? ? //将字符数组cbuf中off位置开始,len个字节写到输出流中
? public void write(char cbuf[], int off, int len) throws IOException {
????? out.write(cbuf, off, len);
? } ? ? //将字符串中off位置开始,len个字符写到输出流中.
? public void write(String str, int off, int len) throws IOException {
????? out.write(str, off, len);
? } ? ? //刷新流
? public void flush() throws IOException {
????? out.flush();
? } ? ? //关闭流,释放相关资源
? public void close() throws IOException {
????? out.close();
? } } ? FilterReader源码: public abstract class FilterReader extends Reader { ? ? //基础字符流
? protected Reader in; ?
? //构造方法,传入基本的字符流
? protected FilterReader(Reader in) {
????? super(in);
????? this.in = in;
? } ? ? //读取一个字符
? public int read() throws IOException {
????? return in.read();
? } ? ? //将缓冲区中数据最多len个字符读取到cbuf字符数组中
? public int read(char cbuf[], int off, int len) throws IOException {
????? return in.read(cbuf, off, len);
? } ? ? //跳过n个字符
? public long skip(long n) throws IOException {
????? return in.skip(n);
? } ? ? //此类中数据是否准备读取,即缓冲区中存在数据
? public boolean ready() throws IOException {
????? return in.ready();
? } ? ? //流是否支持标记
? public boolean markSupported() {
????? return in.markSupported();
? } ? ? //标记流中当前位置,将当前位置保存.
? public void mark(int readAheadLimit) throws IOException {
????? in.mark(readAheadLimit);
? } ? ? //和mark()配合使用,将流当前位置重置到标记的位置
? public void reset() throws IOException {
????? in.reset();
? } ? ? //关闭流,释放资源
? public void close() throws IOException {
????? in.close();
? } }
内容总结
以上是互联网集市为您收集整理的JavaIO流学习总结-FilterReader和FilterWriter分析全部内容,希望文章能够帮你解决JavaIO流学习总结-FilterReader和FilterWriter分析所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。