我遇到java.io.FileNotFoundException问题。有时我会得到这个例外,有时候不会。我不知道为什么,因为指定的文件存在。我认为该文件可能被其他应用程序或系统使用。
我怎么知道文件何时存在/可以读/写?
谢谢。
错误日志:
IOKt错误java.io.FileNotFoundException:/storage/emulated/0/Android/data/com.android.vending/files/20170321_161318.txt:open failed:ENOENT(没有这样的文件或目录)
答案 0 :(得分:0)
结帐File.exists()。但是您的代码应该能够处理FileNotFoundException。此外,您应该首先调查为什么要在第一时间获取它(可能是异常的消息包含线索),因为它可能是由于代码中的错误引起的。
答案 1 :(得分:0)
FileNotFoundException
文件说明:
{@link FileInputStream} {@link将抛出此异常 文件时FileOutputStream}和{@link RandomAccessFile}构造函数 具有指定的路径名不存在。 这些也将被抛出 构造函数如果文件确实存在但由于某种原因是不可访问的 例如,尝试打开只读文件进行编写。
因此,您应该确保您拥有该文件的权限,例如canRead()
类中的canWrite()
,java.io.File
方法。