从filepath以编程方式获取文件名和扩展名cocoa?

时间:2011-08-28 18:39:24

标签: cocoa nsstring filenames filepath nsbundle

我知道你可以使用NSBundle:

 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"rtf"];

获取文件的文件路径,但是如何使用NSBundle以编程方式从文件路径获取文件名和扩展名(单独)。

例如,我可能有:/Users/theuser/Documents/yourdocument.txt

很明显,该文件是'yourdocument',扩展名'txt'

但是我需要从文件路径中获取文件名和扩展名以用作NSString。

非常感谢您的帮助!

4 个答案:

答案 0 :(得分:44)

NSString上有一些方法可以做到这一点。查看-[NSString pathExtension]中定义的-[NSString lastPathComponent]NSPathUtilities.h

答案 1 :(得分:25)

要获取没有扩展名的文件名,请尝试[NSString stringByDeletingPathExtension];

答案 2 :(得分:0)

试试这个,它对我有用。

NSString *fileName = @"yourFileName.pdf";
NSString *ext = [fileName pathExtension];

答案 3 :(得分:-3)

我希望这会对你有帮助....

Str = [NSString stringWithFormat:@"%@",[openPanel URL]];

  [txtBeowsFilePath setStringValue:Str];

  Browesfilename=[Str lastPathComponent];