Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android加载字符串数组列表EOF异常_Java_Android_Inputstream_Serializable_Eofexception - Fatal编程技术网

Java Android加载字符串数组列表EOF异常

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

我正在应用程序中使用ObjectInputStream加载ArrayList。奇怪的是,直到最近,它似乎一直运作良好。我看不出是什么引起的

以下是所涉及的代码片段:

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)