我想检查文件是否存在于我的包文件夹,但我不想创建一个新的。
File file = new File(filePath);
if(file.exists())
return true;
该代码是否在不创建新文件的情况下进行检查?
我想检查文件是否存在于我的包文件夹,但我不想创建一个新的。
File file = new File(filePath);
if(file.exists())
return true;
该代码是否在不创建新文件的情况下进行检查?
当前回答
if(new File("/sdcard/your_filename.txt").exists())){
// Your code goes here...
}
其他回答
public boolean FileExists(String fname) {
File file = getBaseContext().getFileStreamPath(fname);
return file.exists();
}
Path类中的方法是语法的,这意味着它们对Path实例进行操作。但最终必须访问文件系统,以验证特定Path是否存在
File file = new File("FileName");
if(file.exists()){
System.out.println("file is already there");
}else{
System.out.println("Not find file ");
}
当你说“在你的包文件夹中”,你是指你的本地应用程序文件吗?如果是这样,您可以使用Context.fileList()方法获取它们的列表。只需遍历并查找您的文件。这是假设您使用Context.openFileOutput()保存了原始文件。
示例代码(在一个活动中):
public void onCreate(...) {
super.onCreate(...);
String[] files = fileList();
for (String file : files) {
if (file.equals(myFileName)) {
//file exits
}
}
}
Kotlin扩展属性
创建file对象时不会创建文件,它只是一个接口。
为了更容易地处理文件,Uri上有一个.toFile函数
您还可以在文件和/或Uri上添加扩展属性,以进一步简化使用。
val File?.exists get() = this?.exists() ?: false
val Uri?.exists get() = File(this.toString).exists()
然后使用uri。存在或文件。存在是为了检查。
这招对我很管用:
File file = new File(getApplicationContext().getFilesDir(),"whatever.txt");
if(file.exists()){
//Do something
}
else{
//Nothing
}