黑马程序员技术交流社区

标题: 自定义缓冲区 [打印本页]

作者: 刘海源    时间: 2012-8-6 23:35
标题: 自定义缓冲区
自定义缓冲区,MyBufferedReader
  import java.io.FileReader;
import java.io.IOException;

public class MyBufferedReader {
        private FileReader fr;
        private char[] buf = new char[1024];
        private int count = 0;
        private int pos = 0;

        public MyBufferedReader(FileReader fr) {
                this.fr = fr;
        }

        public int MyRead() {
                try {
                        if (count == 0) {
                                count = fr.read();// 记录每次读的字数数
                                pos = 0;// 读取字符数的角标移位
                        }
                } catch (IOException e) {

                        e.printStackTrace();
                }
                if (count < 0)
                        return -1;
                char ch = buf[pos];
                count--;
                pos++;
                return ch;
        }

        public String MyReadLine() {
                StringBuilder sb = new StringBuilder();// 创建一个字符串数组
                int ch = 0;
                while ((ch = MyRead()) != -1) {// 判断是否读到了下一个字符
                        if (ch == '\r')
                                continue;
                        if (ch == '\n')
                                return sb.toString();
                        sb.append((char) ch);

                }
                if (sb.length() != 0)
                        return sb.toString();

                return null;
        }

        public void Myclose() {
                try {
                        fr.close();
                } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }
        }

}
作者: 樊占江    时间: 2012-8-6 23:41
代码没有问题啊
作者: 许庭洲    时间: 2012-8-7 09:35
采用JAVA技术自定义缓冲区,值得学习!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2