1

Objective-C の新機能。完全なファイル パスからディレクトリを取得するにはどうすればよいですか?

もし私が持っているなら

/User/Test/Desktop/test.txt 

私が欲しい

/User/Test

また、Objective-C の .NET の Path.Combine に相当するものはありますか?

4

2 に答える 2

4

-[NSString pathComponents]NSArrayパス コンポーネントの を返します。

例えば

NSString *path = @"/User/Test/Desktop/test.txt";
NSArray *components = [path pathComponents];
NSLog(@"%@", components); //=> ( /, User, Test, Desktop, test.txt )

次に、必要なコンポーネントのみを取得して、それらを使用して新しいパスを構築できます。たとえば、

NSString *newPath =
    [NSString pathWithComponents:
        [components subarrayWithRange:(NSRange){ 0, components.count - 2}]];
NSLog(@"%@", newPath); // => /User/Test/
于 2013-11-12T06:57:13.083 に答える