java高手们进,帮帮忙,没道理啊?怎么只能读一行啊?我要求的是读完一个文件里面所有行.

来源:百度知道 编辑:UC知道 时间:2024/05/20 00:14:35
import java.io.*;
class Read
{
public static void main(String [] args)
{
try
{
FileReader re=new FileReader("c:\\WINDOWS\\win.ini");
BufferedReader bre=new BufferedReader(re);

String str=bre.readLine();
if(str!=null)
{
System.out.println (str);
str=bre.readLine();
}
bre.close();
re.close();
}
catch(Exception e)
{
System.out.println ("文件不存在");
}

}
}

把 “if(str!=null)”这句话中的if改为 “while”即可
while(str != null)

public static List parse(InputStream src) throws IOException{
InputStreamReader isr = new InputStreamReader(src, "8859_1");
BufferedReader in = new BufferedReader(isr);
List records = new ArrayList();
String lineItem;
while((lineItem = in.readLine()) != null){
records.add(splitLine(lineItem));
}
return records;
}

晕,String str=bre.readLine();
就是代表读取一行啊,尽管你在if(str!=null)
{
System.out.println (str);
str=bre.readLine();
}
中写了str=bre.readLine(); 但是你外层也没有循环.根本没作用的.相当于读取一行以后,又读取一行,但是没等第二行输出就关闭了