Web 文本上的 BufferedReader 空指针异常

BufferedReader Nullpointer Exception on web txt

我尝试做一个简单的 class 读取在线 .txt 的内容并将其存储在 DataClass 中。

我在 while 循环的第一个变量赋值中以某种方式得到了 Nullpointer 异常,尽管 line 被打印为“4”。

有人知道我代码中的问题吗?

public class GetFile {
public static List<Log> getFile(){
    URL url = null;
    List<Log> list = new ArrayList<Log>();

    try {
        url = new URL("http://test.net/test.txt");
        BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
        String line;
        while ((line = in.readLine()) != null) {
                Log log = new Log();
                System.out.println("Line is: " + line);

                **-->log.day = Integer.getInteger(line);<--**

                line = in.readLine();
                log.month = Integer.getInteger(line);
                line = in.readLine();
                log.year = Integer.getInteger(line);
                line = in.readLine();
                log.hour = Integer.getInteger(line);
                line = in.readLine();
                log.minute = Integer.getInteger(line);
                line = in.readLine();
                log.hum = Float.parseFloat(line);
                line = in.readLine();
                log.temp = Float.parseFloat(line);
                list.add(log);
                System.out.println("Item added");
        }
        in.close();


    } catch (MalformedURLException e) {
        e.printStackTrace();
    }
    catch (IOException e1) {
        e1.printStackTrace();
    }



    return list;
}
}

.txt 的内容如下:

4
2
2016
22
14
49.5999984741
19.2999992371
4
2
2016
22
14
49.5999984741
19.2999992371
4
2
2016
...

看起来和本期一样:

Why does int num = Integer.getInteger("123") throw NullPointerException?

基本上:"Integer getInteger(String) doesn't do what you think it does"

您应该使用的方法是 parseInt()。尝试更改此行:

log.day = Integer.getInteger(line);

对此:

log.day = Integer.parseInt(line);