import java.io.*;
public class Read {
//读取文本FileReader
public static void main(String[] args) {
char[] b=new char[50];
FileReader fr;
try {
fr=new FileReader("e:\\11.txt");
int len;
while((len=fr.read(b))>0) {
System.out.println("获取字节:"+len);
System.out.println(b);
}
}catch(IOException e) {
e.printStackTrace();
}
}
}
readLine&BufferedReader
使用BufferedReader之前必须使用FileReader
FileReader fr;
BufferedReader br;
try {
fr=new FileReader("e:\\11.txt");
br=new BufferedReader(fr);//fr要实例化
while(true) {
String s=br.readLine();//读取一行
if(s==null) {
System.out.println("结束");
break;
}
else
System.out.println(s);
}
}catch(IOException e) {
e.printStackTrace();
}
简洁方法
FileReader fr;
BufferedReader br;
try {
fr=new FileReader("e:\\11.txt");
br=new BufferedReader(fr);//fr要实例化
String s;
//此处不能直接写成String s=br.readLine()
//然后在while中写while(s!=null)
while((s=br.readLine())!=null) {
System.out.println(s);
}
}catch(IOException e) {
e.printStackTrace();
}
注意:
String s=br.readLine();
while(s!=null){
}
如果如上图所写,则会在第一行无限循环
因为String s=br.readLine();代表s已经定义为读取一行,并没有进入循环中,没有获取继续读取文件内所有行数的能力