2015-08-03 27 views
50

Dosya adı verilen dosya yolu dizesinden nasıl alınır?Dosya yolundan hızlı bir şekilde dosya yolundan nasıl elde edilir

Mesela ben

file:///Users/DeveloperTeam/Library/Developer/CoreSimulator/Devices/F33222DF-D8F0-448B-A127-C5B03C64D0DC/data/Containers/Data/Application/5D0A6264-6007-4E69-A63B-D77868EA1807/tmp/trim.D152E6EA-D19D-4E3F-8110-6EACB2833CE3.MOV 

gibi bir filepath dize varsa ve ben

trim.D152E6EA-D19D-4E3F-8110-6EACB2833CE3.MOV 

Yardımlarınız için teşekkür ederim olarak dönüş sonucu elde etmek istiyorum.

cevap

85

Objective C

NSString* theFileName = [string lastPathComponent] 

Swift

let theFileName = (string as NSString).lastPathComponent 
+0

4 Nasıl Swift bunu yapmak için? Teşekkürler. – Ralph

+1

Eğer eklentiye de ihtiyacınız varsa üzgünüm ... ayin ... şimdi güncelleyecektir –

+0

Teşekkür ederiz. Çalıştırdım! – Ralph

3

bu

let filename: String = "your file name" 
let pathExtention = filename.pathExtension 
let pathPrefix = filename.stringByDeletingPathExtension 

Umarım yardımcı olur deneyin. Swift 2

19

:

var file_name = NSURL(fileURLWithPath: path_to_file).lastPathComponent! 
+0

.lastPathComponent bir "String" ('NSString' için döküm yerine)' 'lastPathComponent'ı çağırırsanız kullanır. –

17

SWIFT 3.x veya SWIFT 4: kısa ve bunu yapmanın temiz bir şekilde aşağıdaki gibidir. Bu örnekte url değişken biz My file name.txt ve değil gibi uzantılı tam dosya adının bir insan okunabilir String sonucu olabilir bu şekilde URL türü, geçerli dosya adını böyle almak istiyorsanız My%20file%20name.txt

// Result like: My file name.txt 
let fileName = url.lastPathComponent 
+1

bu, görüntüler için asset.JPG değerini her zaman döndürür. –

+0

Swift 3'ü içeren Swift 2 yanıtına bakın ve daha uyumludur. –

+0

benimki de - @HarshNigam –

0

gibi olduğu günlüğe kaydetme amaçlı olarak kullanıyorum. Swift

URL(fileURLWithPath: #file).lastPathComponent 
İlgili konular