2014-01-14 90 views
-3

運行mac osx應用程序時,它將創建一個數組,其中包含目錄中所有文件的NSString名稱和擴展名。但是,我想在將數組顯示給用戶並將這些名稱放入數組之前,從數組中的每個文件中刪除文件擴展名。我怎樣才能做到這一點?如何刪除數組中所有文件的文件擴展名?

ex。 picture.jpeg,image.jpeg和picture2.png圖片,圖像和圖片2

+0

正則表達式http://www.zytrax.com/tech/web/regex.htm是一種方法。 – DogCoffee

+0

我想如果你做了一些研究,你可以自己做這個人,如果你努力復興的代碼。 – meda

+0

你可能想看看[NSFileManager displayNameAtPath:](https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/Reference/Reference.html#//apple_ref/doc/uid/20000305-CJBJDAHH) – Mark

回答

5

您可以使用stringByDeletingPathExtension和KVC收集運營商:

NSArray *original = @[@"picture.jpeg", @"image.jpeg", @"picture2.png"]; 
NSArray *modified = [original valueForKeyPath:@"stringByDeletingPathExtension"]; 

這裏valueForKeyPath返回一個包含呼籲陣列中的所有對象stringByDeletingPathExtension結果的數組。

1

NSString的 - stringByDeletingPathExtension應該爲你做的伎倆。