Java Android加载字符串数组列表EOF异常
我正在应用程序中使用ObjectInputStream加载ArrayList。奇怪的是,直到最近,它似乎一直运作良好。我看不出是什么引起的 以下是所涉及的代码片段:Java Android加载字符串数组列表EOF异常,java,android,inputstream,serializable,eofexception,Java,Android,Inputstream,Serializable,Eofexception,我正在应用程序中使用ObjectInputStream加载ArrayList。奇怪的是,直到最近,它似乎一直运作良好。我看不出是什么引起的 以下是所涉及的代码片段: protected ArrayList<String[]> LoadDetailList() { InputStream breedin; ArrayList<String[]> list = null; try { breedin = openFileInput("D
protected ArrayList<String[]> LoadDetailList() {
InputStream breedin;
ArrayList<String[]> list = null;
try {
breedin = openFileInput("DetailList.ser");
list = SaveAndLoad.doLoadDetailList(breedin);
} catch (FileNotFoundException e) {
System.out.println("Details List not found");
list = new ArrayList<String[]>();
}
Stored.addAllDetails(list);
return list;
}
@SuppressWarnings("unchecked")
public static ArrayList<String[]> doLoadDetailList(InputStream breedin) {
ArrayList<String[]> h = null;
try {
ObjectInputStream in = new ObjectInputStream(breedin);
h = (ArrayList<String[]>) in.readObject();
in.close();
breedin.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return h;
}
知道我做错了什么吗
谢谢。EOFEException与读取文件有关。EOF代表文件的结尾。文件中有什么东西吗?这个是在重新安装应用程序后抛出的。然而,当文件中肯定有某些内容时,它出现了。还有其他可能的原因吗?这听起来确实是一个很好的继续下去的可能性。
10-01 14:58:07.130: W/System.err(23213): java.io.EOFException
10-01 14:58:07.130: W/System.err(23213): at java.io.DataInputStream.readByte(DataInputStream.java:98)
10-01 14:58:07.130: W/System.err(23213): at java.io.ObjectInputStream.nextTC(ObjectInputStream.java:506)
10-01 14:58:07.130: W/System.err(23213): at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:778)
10-01 14:58:07.130: W/System.err(23213): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2003)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readNewArray(ObjectInputStream.java:1512)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:785)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2003)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960)
10-01 14:58:07.135: W/System.err(23213): at java.util.ArrayList.readObject(ArrayList.java:657)
10-01 14:58:07.135: W/System.err(23213): at java.lang.reflect.Method.invokeNative(Native Method)
10-01 14:58:07.135: W/System.err(23213): at java.lang.reflect.Method.invoke(Method.java:511)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1354)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1855)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2003)
10-01 14:58:07.135: W/System.err(23213): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960)
10-01 14:58:07.140: W/System.err(23213): at admin.SaveAndLoad.doLoadDetailList(SaveAndLoad.java:309)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService.LoadDetailList(SendService.java:406)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService.getHolding(SendService.java:316)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService.processResponse(SendService.java:152)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService.sendMessage(SendService.java:128)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService$1.run(SendService.java:71)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService.startThread(SendService.java:93)
10-01 14:58:07.140: W/System.err(23213): at services.server.SendService.onHandleIntent(SendService.java:49)
10-01 14:58:07.140: W/System.err(23213): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
10-01 14:58:07.140: W/System.err(23213): at android.os.Handler.dispatchMessage(Handler.java:99)
10-01 14:58:07.140: W/System.err(23213): at android.os.Looper.loop(Looper.java:137)
10-01 14:58:07.140: W/System.err(23213): at android.os.HandlerThread.run(HandlerThread.java:60)