Di File
kelas ada dua string, separator
dan pathSeparator
.
Apa bedanya? Kapan saya harus menggunakan yang satu?
java
file
path-separator
icnhzabot
sumber
sumber
Jawaban:
Jika Anda maksud
File.separator
danFile.pathSeparator
kemudian:File.pathSeparator
digunakan untuk memisahkan jalur file individual dalam daftar jalur file. Pertimbangkan pada windows, variabel lingkungan PATH. Anda menggunakan a;
untuk memisahkan jalur file sehingga WindowsFile.pathSeparator
akan;
.File.separator
adalah salah satu/
atau\
yang digunakan untuk membagi path ke file tertentu. Misalnya pada Windows itu\
atauC:\Documents\Test
sumber
File.separator
harusFile.fileSeparator
mengenaiFile.pathSeparator
File
. Saya pikir bagian file tersirat. Tapi siapa yang tahu mengapa mereka melakukan banyak hal dengan Java.Anda menggunakan pemisah ketika Anda sedang membangun jalur file. Jadi di unix pemisahnya
/
. Jadi jika Anda ingin membangun jalur unix/var/temp
Anda akan melakukannya seperti ini:Anda menggunakan
pathSeparator
ketika Anda berurusan dengan daftar file seperti di classpath. Misalnya, jika aplikasi Anda menggunakan daftar toples sebagai argumen, cara standar untuk memformat daftar itu di unix adalah:/path/to/jar1.jar:/path/to/jar2.jar:/path/to/jar3.jar
Jadi diberi daftar file yang akan Anda lakukan seperti ini:
sumber
/var/temp
itu maka tidak berguna untuk digunakanFile.separator
karena Anda sudah memiliki kode yang bergantung pada platform. Mungkin juga hardcode jalannya.java.io.File
kelas berisi empat variabel pemisah statis. Untuk pemahaman yang lebih baik, Mari kita pahami dengan bantuan beberapa kodePerhatikan bahwa semua ini adalah variabel final dan ketergantungan sistem.
Berikut adalah program java untuk mencetak variabel pemisah ini. FileSeparator.java
Output dari program di atas pada sistem Unix:
Output dari program pada sistem Windows:
Untuk membuat platform program kami independen, kami harus selalu menggunakan pemisah ini untuk membuat jalur file atau membaca variabel sistem apa pun seperti PATH, CLASSPATH.
Berikut ini cuplikan kode yang menunjukkan cara menggunakan pemisah dengan benar.
sumber
String
danchar
dikembalikan oleh metode yang disebutkan di atas tidak mengembalikan backslash diformat dengan benar (jika pada Windows).