Arraylists和平面文件数据库

时间:2012-05-16 01:32:27

标签: java

我正在尝试创建一个程序,将字符串列表保存到文件中,然后将它们读入arraylist。这是我目前的代码。

ObjectInputStream input = null;

    try {
        input = new ObjectInputStream(new FileInputStream("friends.txt"));
    } catch (FileNotFoundException e) {
        File f = new File("friends.txt");
        try {
            f.createNewFile();
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    String obj;

    try {
        while ((obj = (String)input.readObject()) != null) {
            friendly.add(obj);
        }
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

返回空指针异常。我不太确定这里出了什么问题。

1 个答案:

答案 0 :(得分:2)

嗯,首先,如果文件不存在,'input'将为null。

我不太清楚处理文件不存在的原因是什么原因 - 为什么不只是通过File.exists()测试存在而只执行打开和读取如果它存在?

除此之外,正如另一位评论员所说,提供一个开始的堆栈跟踪。