Saya memerlukan metode yang valid untuk memeriksa apakah String
suatu jalur mewakili file atau direktori. Apa nama direktori yang valid di Android? Ketika keluar, nama folder dapat berisi '.'
karakter, jadi bagaimana sistem memahami apakah ada file atau folder?
141
Jawaban:
Dengan asumsi
path
adalah milik AndaString
.Lihat
File
JavadocAtau Anda dapat menggunakan kelas NIO
Files
dan memeriksa hal-hal seperti ini:sumber
path
dalam contoh saya adalahString
. Mengapa Anda tidak bisa membuatFile
instance? Perhatikan bahwa ini tidak akan mengubah apa pun pada sistem file.root
mungkin berupa file. File tidak harus memiliki.something
ekstensi.Solusi bersih sambil tetap menggunakan API nio:
sumber
File
objek baru setiap kali. Menghemat memoriHarap tempuh API nio untuk melakukan pemeriksaan ini
sumber
sumber
Tidak ada cara bagi sistem untuk memberi tahu Anda jika suatu
String
mewakilifile
ataudirectory
, jika itu tidak ada dalam sistem file. Sebagai contoh:Dan untuk contoh berikut:
Jadi kita melihat bahwa dalam kedua kasus sistem mengembalikan false. Ini berlaku untuk keduanya
java.io.File
danjava.nio.file.Path
sumber
Untuk memeriksa apakah string mewakili jalur atau file secara terprogram, Anda harus menggunakan metode API seperti
isFile(), isDirectory().
Saya kira, entri file dan folder disimpan dalam struktur data dan dikelola oleh sistem file.
sumber
sumber
Untuk menjawab pertanyaan secara langsung.
sumber