日期:2014-05-20  浏览次数:20873 次

java File exists函数 为什么我判断文件是否存在的时候,总是返回false,文件在目录下是存在的
RT,很不明白


[code=Java][/code]File file = new File("ChineseDictionary.dat");
System.out.println("文件存在么?");
System.out.println(file.exists());

//下面的if语句给dic初始化
if (file.exists()) {
dic = dic.loadDic("ChineseDictioanry.dat");
} else {
dic.loadDic(file);
}


------解决方案--------------------
如果这样的话,好像要放在和main在一起。。
------解决方案--------------------

File file = new File(URLDecoder.decode(Main.class.getResource("").getPath(), "UTF-8")+"ChineseDictionary.dat"); 
换成这样看看
------解决方案--------------------
探讨
我的文件就放在工程的目录下的

------解决方案--------------------
楼主如果是用eclipse的话,这个文件应该放在项目目录下,不是bin或者src目录。我正在用这个,刚试了试没问题的。 -- 不过楼主已经说了

如果楼主是用命令行的话,这个文件应该和.java放在一起

另外,为啥不用FileNotFoundException来处理?
------解决方案--------------------
你用绝对地址试试
------解决方案--------------------
探讨
引用:
楼主如果是用eclipse的话,这个文件应该放在项目目录下,不是bin或者src目录。我正在用这个,刚试了试没问题的。 -- 不过楼主已经说了

如果楼主是用命令行的话,这个文件应该和.java放在一起

另外,为啥不用FileNotFoundException来处理?
您好。我不懂您说的FileNotFoundException是怎么回事。我是初学的。用这个应该怎么处理呢?谢谢您的答复。

------解决方案--------------------
File file = new File("ChineseDictionary.dat"); 
下面把file的getAbsolutePath()打出拉看看是什么就扔那里去,(单词可能拼错了,用IDE多了的下场