import java.io.*;
class MyLineNumberReader
{
private int line;
private FileReader r;
MyLineNumberReader(FileReader r)
{
this.r=r;
}
public void mySetLine(int line)
{
this.line=line;
}
public int myGetLine()
{
return line;
}
public String myReadLine()throws IOException
{
line++;
StringBuilder sb=new StringBuilder();
int a=0;
while ((a=r.read())!=-1)
{
if (a=='\r')
{
continue;
}
if (a=='\n')
{
return sb.toString();
}
else
{
sb.append((char)a);
}
}
if (sb.length()!=0)
{
return sb.toString();
}
return null;
}
public void myClose()throws IOException
{
r.close();
}
}
class MyLineDemo
{
public static void main(String[] args)throws IOException
{
FileReader fr=new FileReader("FileReaderTest.java");
MyLineNumberReader mnu=new MyLineNumberReader(fr);
mnu.mySetLine(99);
String s=null;
while ((s=mnu.myReadLine())!=null)
{
System.out.println(mnu.myGetLine()+" "+s);
}
mnu.myClose();
}
}
自定义LineNumberReader
最新推荐文章于 2024-09-06 00:15:00 发布