Ketika saya sudah NSString
dengan /Users/user/Projects/thefile.ext
saya ingin mengekstrak thefile
dengan metode Objective-C.
Apa cara termudah untuk melakukan itu?
objective-c
cocoa
Anton
sumber
sumber
Jawaban:
Diambil dari referensi NSString , Anda dapat menggunakan:
The
lastPathComponent
panggilan akan kembalithefile.ext
, danstringByDeletingPathExtension
akan menghapus akhiran ekstensi dari akhir.sumber
lastPathComponent
. Terima kasih![[[NSFileManager defaultManager] displayNameAtPath:path] stringByDeletingPathExtension]
(gunakan file manager apa pun yang Anda inginkan). Ini memastikan nama file dilokalkan dengan benar, dan ekstensi telah dihapus.NSString *myExtension = [myString pathExtension]
Jika Anda menampilkan nama file yang dapat dibaca pengguna, Anda tidak ingin menggunakannya
lastPathComponent
. Alih-alih, berikan path lengkap kedisplayNameAtPath:
metode NSFileManager . Ini pada dasarnya melakukan hal yang sama, hanya itu dengan benar melokalkan nama file dan menghapus ekstensi berdasarkan preferensi pengguna.sumber
Dengan risiko bertahun-tahun terlambat dan keluar dari topik - dan meskipun wawasan luar biasa @ Marc, di Swift sepertinya:
sumber