首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FileNotFoundException误差

FileNotFoundException误差
EN

Stack Overflow用户
提问于 2014-03-09 09:51:57
回答 2查看 890关注 0票数 0

抱歉,这个标题不好,我想不出更好的了。

目前,我在FileNotfoundException中遇到了这个矛盾的问题,在这里,我的文件是通过命令file.getCanonicalPath()定位的,并且是在使用FileInputStream方法时找到的。我得到了一个FileNotFoundException.

以下是我使用的代码:

代码语言:javascript
复制
File file = new File("members.s");
        System.out.println(file.getCanonicalPath());

        FileInputStream fileIn = new FileInputStream("C:\\Users\\users\\Documents\\NetBeansProjects\\CWA2\\members.s");
        ObjectInputStream in = new ObjectInputStream(fileIn);

        byte[] b=new byte[fileIn.available()];
        for(int i=0;i<b.length;i++){
            m.add(mem = (Member)in.readObject());
        }

这是我得到的输出和异常错误。

代码语言:javascript
复制
    C:\Users\users\Documents\NetBeansProjects\CWA2\members.s
java.io.FileNotFoundException: C:\Users\users\Documents\NetBeansProjects\CWA2\members.s (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:146)
    at java.io.FileInputStream.<init>(FileInputStream.java:101)
    at Demos.DeserializeDemo.main(DeserializeDemo.java:21)

所以我有点困惑。file.getCanonicalPath()方法如何定位我想要使用的文件,但是FileInputStream返回一个错误。有人能在thiS上帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-09 10:33:29

file.getCanonicalPath()只返回"members.s"作为它的路径,而不是完整的路径。getCaninicalPath()从路径名中删除冗余的...

因为FileInputStreamFile作为其参数(也是字符串),而File则以String作为参数。

代码语言:javascript
复制
File file = new File("members.s");
System.out.println(file.getCanonicalPath());

FileInputStream fileIn = new FileInputStream("C:\\Users\\users\\Documents\\NetBeansProjects\\CWA2\\members.s");

这应该是

代码语言:javascript
复制
File file = new File("C:\\Users\\users\\Documents\\NetBeansProjects\\CWA2\\members.s");
FileInputStream fileIn = new FileInputStream(file);
票数 0
EN

Stack Overflow用户

发布于 2014-03-09 10:16:34

如果不存在具有指定路径名的文件,或者该文件确实存在,但由于某些原因无法访问,则会引发此异常,例如,试图打开只读文件以进行写入。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22280765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档