2016-03-25 29 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

这意味着你实现文件的结尾,并尝试阅读更多内容。

相关问题