Я хочу перевірити, чи існує файл у моїй папці пакунків, але я не хочу створювати новий.
File file = new File(filePath);
if(file.exists())
return true;
Чи перевіряє цей код без створення нового файлу?
Я хочу перевірити, чи існує файл у моїй папці пакунків, але я не хочу створювати новий.
File file = new File(filePath);
if(file.exists())
return true;
Чи перевіряє цей код без створення нового файлу?
Відповіді:
Ваш фрагмент коду не створює нового, він лише перевіряє, чи його вже є, і нічого іншого.
File file = new File(filePath);
if(file.exists())
//Do something
else
// Do something else.
Коли ви використовуєте цей код, ви не створюєте новий файл, він просто створює посилання на об'єкт для цього файлу і тестує, чи існує він чи ні.
File file = new File(filePath);
if(file.exists())
//do something
Це працювало для мене:
File file = new File(getApplicationContext().getFilesDir(),"whatever.txt");
if(file.exists()){
//Do something
}
else{
//Nothing
}
Коли ви говорите "в папці пакунків", ви маєте на увазі ваші локальні файли додатків? Якщо так, ви можете отримати їх список за допомогою методу Context.fileList () . Просто перегляньте і шукайте свій файл. Це припускаючи, що ви зберегли початковий файл з Context.openFileOutput () .
Приклад коду (у діяльності):
public void onCreate(...) {
super.onCreate(...);
String[] files = fileList();
for (String file : files) {
if (file.equals(myFileName)) {
//file exits
}
}
}
Клас methods
Path є синтаксичним, це означає, що вони працюють на екземплярі Path. Але врешті-решт, ви повинні отримати доступ до file
системи, щоб переконатися, що існує певний Шлях
File file = new File("FileName");
if(file.exists()){
System.out.println("file is already there");
}else{
System.out.println("Not find file ");
}
Жоден файл не створюватиметься при створенні об’єкта File, це лише інтерфейс.
Щоб полегшити роботу з файлами, .toFile
на Uri існує функція
Ви також можете додати властивість розширення у File та / або Uri, щоб додатково спростити використання.
val File?.exists get() = this?.exists() ?: false
val Uri?.exists get() = File(this.toString).exists()
Потім просто скористайтеся uri.exists
або file.exists
для перевірки.