bufferedReader.readline返回null

时间:2013-07-02 01:03:28

标签: java android file io

这是一个非常快速的问题,我有一个文件 AFC / save.txt的 里面有这个

彼得

现在我在Java中使用这个代码,它返回null,任何想法为什么?

//Android
try {
        InputStream fis = game.getFileIO().readFile("AFC/save.txt");
        BufferedReader br = new BufferedReader(new InputStreamReader(fis));
        if(br.readLine() != null)
        {
                            Log.d("File", "Value : " + br.readLine() );
            player = br.readLine();
        }
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

该值为空。

1 个答案:

答案 0 :(得分:6)

哪个值为空?

if(br.readLine() != null),您正在阅读文件的第一行。

Log.d("File", "Value : " + br.readLine() );,您位于文件的第二行。

player = br.readLine();,您正在阅读文件的第三行。如果文件中只有一行,则该行将返回null。

尝试:

try {
    String temp;
    InputStream fis = game.getFileIO().readFile("AFC/save.txt");
    BufferedReader br = new BufferedReader(new InputStreamReader(fis));
    if((temp = br.readLine()) != null)
    {
          player = temp;
          Log.d("File", "Value : " + player );
    }
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}