kzen.dev
  • Pertanyaan
  • Tag
  • Pengguna
Notifikasi
Imbalan
Registrasi
Setelah Anda mendaftar, Anda akan diberitahu tentang balasan dan komentar untuk pertanyaan Anda.
Gabung
Jika Anda sudah memiliki akun, masuk untuk memeriksa pemberitahuan baru.
Akan ada hadiah untuk pertanyaan, jawaban, dan komentar tambahan.
Lebih
Sumber
Sunting
 Max
Max
Question

Meloloskan backslash dalam string - javascript

Saya perlu menampilkan nama file yang sedang dipilih (dalam elemen <input type="file">).

Semuanya baik-baik saja, satu-satunya masalah adalah saya mendapatkan string seperti ini "C:\fakepath \typog_rules.pdf" (browset secara otomatis menempatkan ini sebagai nilai untuk elemen input).

Ketika saya mencoba untuk membagi string dengan '\' atau '\\', gagal karena garis miring yang tidak terkecuali. Upaya untuk mencocokkan/mengganti garis miring juga gagal. Apakah ada cara untuk mengatasi hal ini? Saya membutuhkan ini untuk bekerja setidaknya di Opera dan IE (karena di browser lain saya dapat menggunakan FileReader)

E.G. Saya mendapatkan "C:\fakepath\typog_rules.pdf" sebagai input dan ingin mendapatkan "typog_rules.pdf" sebagai output.

23 2011-12-23T16:30:59+00:00 3
 Max
Max
Pertanyaan edit 23 Desember 2011 в 7:25
Pemrograman
file
javascript
escaping
input
backslash
Pertanyaan ini memiliki :value jawaban dalam bahasa Inggris, untuk membacanya masuk ke akun Anda.
Solution / Answer
Rob W
Rob W
23 Desember 2011 в 4:32
2011-12-23T16:32:41+00:00
Lebih
Sumber
Sunting
#15042190

Untuk alasan keamanan, tidak mungkin untuk mendapatkan jalur lengkap yang sebenarnya dari sebuah file, yang dirujuk melalui elemen &<input type="file" />.

Pertanyaan ini sudah menyebutkan, dan menautkan ke pertanyaan-pertanyaan Stack Overflow lainnya mengenai topik ini.


*Jawaban sebelumnya, disimpan sebagai referensi untuk pengunjung yang akan datang yang mencapai halaman ini melalui judul, tag dan pertanyaan.*
Backslash harus diekskresikan.
string = string.split("\\");

Dalam JavaScript, backslash digunakan untuk menghindari karakter khusus, seperti baris baru (\n). Jika Anda ingin menggunakan backslash literal, backslash ganda harus digunakan.

Jadi, jika Anda ingin mencocokkan dua backslash, empat backslash harus digunakan. Sebagai contoh, alert("\\\\") akan menampilkan dialog yang mengandung dua garis miring.

 Community
Community
Jawaban edit 23 Mei 2017 в 12:15
27
0
 Himerzi
Himerzi
18 Januari 2013 в 5:32
2013-01-18T17:32:58+00:00
Lebih
Sumber
Sunting
#15042191

Saya pikir ini lebih dekat dengan jawaban yang Anda cari:

<input type="file">

$file = $(file);
var filename = fileElement[0].files[0].name;
 Himerzi
Himerzi
Jawaban edit 28 Juli 2014 в 4:04
4
0
 Quentin
Quentin
23 Desember 2011 в 4:32
2011-12-23T16:32:24+00:00
Lebih
Sumber
Sunting
#15042189

Melarikan diri dari karakter backslash.

foo.split('\\')
3
0
Related communities 1
JavaScript Indonesia
JavaScript Indonesia
16 345 pengguna
Grup JavaScript yang membahas JavaScript, framework JS, dan Node JS secara universal. Cek Pinned Message untuk keterangan lebih lanjut. Komunitas ReactJS: https://t.me/react_idn
Buka telegram
Tambahkan pertanyaan
Kategori
Semua
Teknologi
Budaya / Rekreasi
Kehidupan / Seni
Ilmu Pengetahuan
Profesional
Bisnis
Pengguna
Semua
Baru
Populer
1
工藤 芳則
Terdaftar 6 hari yang lalu
2
Ирина Беляева
Terdaftar 1 minggu yang lalu
3
Darya Arsenyeva
Terdaftar 1 minggu yang lalu
4
anyta nuam-nuam (LapuSiK)
Terdaftar 1 minggu yang lalu
5
Shuhratjon Imomkulov
Terdaftar 1 minggu yang lalu
ID
JA
© kzen.dev 2023
Sumber
stackoverflow.com
di bawah lisensi cc by-sa 3.0 dengan atribusi