为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的代码只能读出第一行,然后就一直循环?求大家帮忙!!

为什么我的代码只能读出第一行,然后就一直循环?求大家帮忙!!

winter_yi 2015-08-11 15:38:31
public class test7 {    public static void main(String[] args){        BufferedReader br = null;        try {            br = new BufferedReader(                    new InputStreamReader(                            new FileInputStream("这里是文件名")));        } catch (FileNotFoundException e) {            e.printStackTrace();        }        String line = null;        try {            line = br.readLine();        } catch (IOException e) {            e.printStackTrace();        }        String[] test;        int lineNo = 1;        while(line!=null){            test = line.split(":");            System.out.println("line"+lineNo+test[test.length - 1]);            lineNo ++;        }        try {            br.close();        } catch (IOException e) {            e.printStackTrace();        }    }}最后输出的是第一行最后一个:后面的内容,然后line不断增加,line数也对,就是后面内容一直是第一行的。求大家帮个忙呗!谢谢了!
查看完整描述

2 回答

?
winter_yi

TA贡献3条经验 获得超0个赞

自己明白怎么回事了,应该在循环里再添一行readline的

查看完整回答
反对 回复 2015-08-11
?
Code_M0keny

TA贡献8条经验 获得超1个赞

System.out.println("line"+lineNo+test[test.length - 1]);

你注意看那这的代码: 其中的test[test.length - 1], test.lenth的值是固定的吧, 假设是20, 那么test[test.length - 1]就变成了test[19],所以每次输出的都是test[19]。

查看完整回答
反对 回复 2015-08-11
  • 2 回答
  • 0 关注
  • 1210 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信