如果我想检查文件是否存在,我将使用:
File file = new File("name of File");
if(file.exists()) { //do something}
但我该怎么做,如果我想用它作为安装检查:可以创建文件,例如5或10分钟后:file.exists()
如何控制文件是否存在?
E.G。
Installation.chk
(文件已存在)
我的if语句现在是真的是否可以用Java创建它?如果是,怎么样?
答案 0 :(得分:1)
也许有更好的方法:
http://docs.oracle.com/javase/tutorial/essential/io/notification.html
不要循环你的exists(),让操作系统告诉你,如果有什么变化。
答案 1 :(得分:0)
在处理文件系统时,你必须接受竞争条件的发生并为它们做好计划。
您现在只能检查文件是否存在,而不是它是否会继续存在,因为可以装入/弹出磁盘,超级用户帐户可以删除文件或取消链接或使父目录不可读。
java.io
也不支持文件锁定。
如果您需要检查是否安装了某些内容,您可以尽最大努力,但是当您的软件运行时,您无法阻止用户卸载其他软件。
if(file.exists()) { /*do something*/}
这本身很少有用。
通常,组合文件类型和权限检查会识别出比测试存在更糟糕的状态。
file.isFile() && file.canRead()