Kiedy mam NSString
ze /Users/user/Projects/thefile.ext
chcę wyodrębnić thefile
metodami Objective-C.
Jak najłatwiej to zrobić?
objective-c
cocoa
Anton
źródło
źródło
Odpowiedzi:
Na podstawie odwołania do NSString możesz użyć:
lastPathComponent
Rozmowa powrócithefile.ext
istringByDeletingPathExtension
będzie usunąć przyrostek przedłużacz od końca.źródło
lastPathComponent
. Dziękuję Ci![[[NSFileManager defaultManager] displayNameAtPath:path] stringByDeletingPathExtension]
(użyj dowolnego menedżera plików, jaki chcesz). Zapewnia to poprawną lokalizację nazwy pliku i usunięcie rozszerzenia.NSString *myExtension = [myString pathExtension]
Jeśli wyświetlasz nazwę pliku czytelną dla użytkownika, nie chcesz jej używać
lastPathComponent
. Zamiast tego przekaż pełną ścieżkę dodisplayNameAtPath:
metody NSFileManager . Zasadniczo robi to samo, tylko poprawnie lokalizuje nazwę pliku i usuwa rozszerzenie na podstawie preferencji użytkownika.źródło
W ryzyku spóźnienia się o wiele lat i bez tematu - i pomimo doskonałej wiedzy @ Marc, w Swift wygląda to tak:
źródło