重写readline方法

package com.xiaorenwu.iotest;

import java.io.FileReader;
import java.io.IOException;

public class ReadLine1 {
    //声明一个字符数组当做缓冲区
    private char buf[] =new char[1024];
    //声明一个字符数组指针用于标记位置
    private int pos;
    //声明一个计数器用于记录字符数组中的元素个数
    private int count;
    //声明一个读入文件流。用于接收读入文件流
    private FileReader fr;
    //构造函数,给变量进行初始化
    public ReadLine1(FileReader fr){
        this.fr=fr;
        pos=0;
        count=0;
    }
    //定义myRead()
    public int myRead() throws IOException{
        if(count==0){
            count=fr.read(buf);
            pos=0;
            //如果数组中没有元素,从源中取出一批元素,
            //存放在数组中,并用count记录其个数
            //并重新初始化指针
        }
        if(count!=-1){
            count--;
            return buf[pos++];
        }else{
            return -1;
        }
    }
    public String myReadLine() throws IOException{
         StringBuilder sb=new StringBuilder();
         int ch=0;
         while((ch=myRead())!=-1){
             if((char)ch=='\r'){
                 continue;
             }
             if((char)ch=='\n'){
                 break;
             }
             sb.append(ch);
         }
         return sb.toString();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值