实例如下所示:
package day0208; import java.io.FileReader;import java.io.IOException; public class MyBufferReader { private FileReader r; MyBufferReader(FileReader r){ this.r=r; } //定义一个数组作为缓冲区 private char[] buf=new char[1024]; //定义个指针用于操作这个数组的元素,当操作到最后一个元素后,指针应该归零 private int pos=0; //定义一个计数器,用于记录缓冲区中的数据个数,当该数据减到0,就从源中继续获取数据到缓冲区中。 private int count =0; public int myRead() throws IOException{//自定义read方法 if(count==0){//如果缓冲区中没有数据,则从源中获取一批数据到缓冲区 count=r.read(buf); pos=0; } if(count<0){ return -1; } char ch=buf[pos++];//一次从缓冲区获取一个字符 count--; return ch; } public String myReadLine() throws IOException{//自定义readLine犯法 StringBuilder sb=new StringBuilder(); int ch=0; while((ch=myRead())!=-1){//只要还有数据就进行读取 if(ch=='\n')//java换行符,停止读取,将已经读取到的数据输出返回 return sb.toString(); if(ch=='\r') continue;//window下的换行符,不读也不换行,继续读取后面的字符 sb.append((char)ch);//正常情况下,不断进行读取 } if(sb.length()!=0)//如果文档中中有字符,就返回读取到的数据 return sb.toString(); return null;//如果是空文档,就返回空 } public void myClose() throws IOException{ r.close();//关闭流资源 }}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容猜你喜欢
AI推送时光机基于自定义BufferedReader中的read和readLine方法
后端开发2023-05-30
vue中自定义指令(directive)的基本使用方法
后端开发2024-04-02
基于Vue实现自定义组件的方式引入图标
后端开发2024-04-02
Android中View自定义组合控件的基本编写方法
后端开发2022-06-06
JavaScript函数的定义和基本使用方法
后端开发2024-04-02
详解SpringBoot中自定义和配置拦截器的方法
后端开发2024-04-02
Vue3 中自定义插件的实现方法
后端开发2022-11-13
ReactNative中添加自定义字体的方法
后端开发2022-11-13
android中自定义view的方法有哪些
后端开发2023-10-18
如何实现Jquery基于Ajax方法自定义无刷新提交表单Form
后端开发2024-04-02
PHP 数组合并去重算法:基于闭包的自定义规则
后端开发2024-04-20
Android中自定义一个View的方法详解
后端开发2022-06-06
PHP中自定义排序的方法有哪些
后端开发2024-04-02
Android中用Builder模式自定义Dialog的方法
后端开发2022-06-06
Android中 自定义数据绑定适配器BaseAdapter的方法
后端开发2022-06-06
css中自定义属性和聚光灯效果的实现方法
后端开发2023-06-08
Mysql中自定义函数的创建和执行方法是什么
后端开发2023-03-13
Linux中自定义Cinnamon桌面的方法有哪些
后端开发2023-06-27
在.NET 6.0中自定义接口路由的方法
后端开发2024-04-02
咦!没有更多了?去看看其它编程学习网 内容吧