2016-03-25 33 views
0

我正在處理一個數據結構項目,似乎無法找出爲什麼我得到這個異常。當我在eclipse中運行我的項目時,這是它給出的錯誤。Java異常線程EOFException

Exception in thread "main" java.io.EOFException 
    at java.io.RandomAccessFile.readInt(RandomAccessFile.java:803) 
    at java.io.RandomAccessFile.readLong(RandomAccessFile.java:836) 
    at project_test.BTree.<init>(myClassB.java:75) 
    at project_test.URLTestBNode.main(myClassA.java:25) 

這是否僅僅表示它找不到我給它的URL?在相關的代碼

放眼望去線25:

public class myClassA { 
20) public static void main(String[] args) throws FileNotFoundException, IOException, URISyntaxException { 
    21) URL url1 = new URL("The first URL"); 
    22) URL url2 = new URL("The second URL"); 
    23) RandomAccessFile rf1 = new RandomAccessFile(url1.toString().replace("/",""),"rw"); 
    24) RandomAccessFile rf2 = new RandomAccessFile(url2.toString().replace("/",""),"rw"); 
    25) BTree tree1 = new BTree(rf1, 64); //Error this line 
    26) BTree tree2 = new BTree(rf2, 64); 
    ... 
    } 
} 

培訓相關的代碼行周圍75:

public class myClassB{ 
69) public myClassB(RandomAccessFile f, int k) throws IOException, FileNotFoundException{ 

    71) file = f; 
    72) file.seek(0); 

    73) byte[] url = new byte[256]; 
    74) file.read(url); 

    75) long rootIndex = file.readLong(); //This line 
    76) file.seek(rootIndex); 
    ... 
    } 
} 

我真的可以想到的是,唯一的事情,如果它不能找到存儲的URL出於某種原因,或者如果它沒有註冊我在那裏添加了異常。我可以做什麼來解決這個問題的任何想法?

回答

1

EOF表示文件結束。你的程序試圖讀取超出文件末尾的內容。這意味着文件被截斷,太短,損壞或者您在讀取或寫入代碼時存在錯誤。

0

這意味着你實現文件的結尾,並嘗試閱讀更多內容。

相關問題