我正在尝试创建一个程序,将字符串列表保存到文件中,然后将它们读入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();
}
返回空指针异常。我不太确定这里出了什么问题。
答案 0 :(得分:2)
嗯,首先,如果文件不存在,'input'将为null。
我不太清楚处理文件不存在的原因是什么原因 - 为什么不只是通过File.exists()测试存在而只执行打开和读取如果它存在?
除此之外,正如另一位评论员所说,提供一个开始的堆栈跟踪。