Nie wiem, dlaczego w moim przypadku ten kod tworzy nowy plik.
wiadomo
Jak również sprawdzić w podfolderze?
Pratik Butani
4
Dzieje się tak dlatego, że nie ma metody statycznej: File.exists (plik String), więc musisz utworzyć nowy obiekt File, aby uzyskać dostęp do metody „Exists”.
Giova
3
Myślę, że OP nie chce tworzyć nowego obiektu pliku.
AndroDev,
1
@AndroDev nie - nie chce tworzyć nowego PLIKU, odpowiedź tworzy nowe ODNIESIENIE do pliku.
Marian Paździoch
31
Kiedy używasz tego kodu, nie tworzysz nowego pliku, po prostu tworzymy odwołanie do obiektu dla tego pliku i testujemy, czy istnieje.
Jest to rozwiązanie, jeśli masz tylko nazwę pliku, a nie jego ścieżkę
Zach.
1
@Zach Nie bardzo, to ścieżka byłaby pierwszym parametrem, który wysłałem (getApplicationContext (). GetFilesDir ())
Jordi Vicens,
8
Kiedy mówisz „w swoim folderze pakietu”, masz na myśli lokalne pliki aplikacji? Jeśli tak, możesz uzyskać ich listę za pomocą metody Context.fileList () . Po prostu iteruj i poszukaj swojego pliku. Zakłada się, że zapisałeś oryginalny plik za pomocą Context.openFileOutput () .
methodsW klasie ścieżce składniowym, co oznacza, że działają one na przykład Path. Ale ostatecznie musisz uzyskać dostęp do filesystemu, aby sprawdzić, czy istnieje konkretna Ścieżka
File file =newFile("FileName");if(file.exists()){System.out.println("file is already there");}else{System.out.println("Not find file ");}
Odpowiedzi:
Twój fragment kodu nie tworzy nowego, sprawdza tylko, czy już tam jest i nic więcej.
źródło
Kiedy używasz tego kodu, nie tworzysz nowego pliku, po prostu tworzymy odwołanie do obiektu dla tego pliku i testujemy, czy istnieje.
źródło
To działało dla mnie:
źródło
Kiedy mówisz „w swoim folderze pakietu”, masz na myśli lokalne pliki aplikacji? Jeśli tak, możesz uzyskać ich listę za pomocą metody Context.fileList () . Po prostu iteruj i poszukaj swojego pliku. Zakłada się, że zapisałeś oryginalny plik za pomocą Context.openFileOutput () .
Przykładowy kod (w działaniu):
źródło
methods
W klasie ścieżce składniowym, co oznacza, że działają one na przykład Path. Ale ostatecznie musisz uzyskać dostęp dofile
systemu, aby sprawdzić, czy istnieje konkretna Ścieżkaźródło
źródło
Właściwości rozszerzenia Kotlin
Po utworzeniu obiektu File nie zostanie utworzony żaden plik, jest to tylko interfejs.
Aby ułatwić pracę z plikami,
.toFile
w Uri istnieje istniejąca funkcjaMożesz także dodać właściwość rozszerzenia do pliku i / lub Uri, aby jeszcze bardziej uprościć korzystanie.
Następnie użyj
uri.exists
lub,file.exists
aby sprawdzić.źródło