Java中读取txt最后一行的内容..

Filef1=newFile("Data\\ShortMessage.txt");FileInputStreamfos=newFileInputStream(f1);In... File f1 = new File("Data\\ShortMessage.txt");
FileInputStream fos=new FileInputStream(f1);
InputStreamReader osw =new InputStreamReader(fos);
BufferedReader bw=new BufferedReader(osw);
while(bw.readLine()!=null)
{m=bw.readLine();System.out.println(m);}
结果 每次循环显示的是:
null
null
地震地区:广东省阳江市阳西县(有感) 发生时间:2013-09-18 17:26:05 精度:111.8 纬度:21.7 地震深度:12km
///////////////////////////////////////
按道理应该是没有前面两行null的:
地震地区:广东省阳江市阳西县(有感) 发生时间:2013-09-18 17:26:05 精度:111.8 纬度:21.7 地震深度:12km
展开
 我来答
百度网友af6bfe3407
推荐于2016-09-13
知道答主
回答量:29
采纳率:0%
帮助的人:27.3万
展开全部
package testfile;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class TestFile {
ArrayList<String> ar=new ArrayList<String>();
public static void main(String[] args) {
// TODO Auto-generated method stub
TestFile t=new TestFile();
try {
t.readFile("F://exe2.txt");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
public void readFile(String st) throws Exception{
File file=new File(st);
FileReader fr=new FileReader(file);
BufferedReader bw=new BufferedReader(fr);
String str=null;
while((str=bw.readLine())!=null){
ar.add(str);
}
for(int i=0;i<ar.size();i++){
System.out.println(ar.get(i)+"\n\r");
}

}
}

读取最后一行只要取出 ar的最后一个值即可。。
注意:你写的问题在于你一次while循环 bw读了两次。。。小括号里一次,大括号里一次。。
追问
你的 ar是什么?
追答
ar 就是ArrayList 集合。。存放 String 的。。
kitencx
2013-09-19 · TA获得超过439个赞
知道小有建树答主
回答量:300
采纳率:0%
帮助的人:207万
展开全部

能读出来你就该庆幸了呢

while(bw.readLine()!=null)
{
    m=bw.readLine();
    System.out.println(m);
}

你这么写,直接就白白跳过一行呢

while((m = bw.readLine()) != null){
    System.out.println(m);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伽罗太华的
2013-09-19 · 超过15用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:39.4万
展开全部
while((String m = bw.readLine())!=null)
{ System.out.println(m);}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式