ios开发之NSPathUtilities

来源:互联网 发布:烽火路由器mac地址过滤 编辑:程序博客网 时间:2024/05/19 17:49
NSString *NSUserName(void);

返回用户名

NSString *NSFullUserName(void);

返回完整用户名

NSString *NSHomeDirectory(void);

返回当前工作目录

NSString * _Nullable NSHomeDirectoryForUser(NSString * _Nullable userName);

返回用户的工作目录

NSString *NSTemporaryDirectory(void);

返回临时工作目录

NSString *NSOpenStepRootDirectory(void);

返回用户的系统目录

NSArray<NSString *> *NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory directory, NSSearchPathDomainMask domainMask, BOOL expandTilde);

获取搜索路径

typedef NS_ENUM(NSUInteger, NSSearchPathDirectory) {    NSApplicationDirectory = 1,               NSDemoApplicationDirectory,           NSDeveloperApplicationDirectory,           NSAdminApplicationDirectory,                NSLibraryDirectory,                         NSDeveloperDirectory,                       NSUserDirectory,                            NSDocumentationDirectory,                   NSDocumentDirectory,                        NSCoreServiceDirectory,                    NSAutosavedInformationDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 11,      NSDesktopDirectory = 12,                    NSCachesDirectory = 13,                     NSApplicationSupportDirectory = 14,         NSDownloadsDirectory NS_ENUM_AVAILABLE(10_5, 2_0) = 15,       NSInputMethodsDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 16,    NSMoviesDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 17,          NSMusicDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 18,           NSPicturesDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 19,        NSPrinterDescriptionDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 20,       NSSharedPublicDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 21,             NSPreferencePanesDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 22,          NSApplicationScriptsDirectory NS_ENUM_AVAILABLE(10_8, NA) = 23,        NSItemReplacementDirectory NS_ENUM_AVAILABLE(10_6, 4_0) = 99,          NSAllApplicationsDirectory = 100,          NSAllLibrariesDirectory = 101,             NSTrashDirectory NS_ENUM_AVAILABLE(10_8, NA) = 102   };
typedef NS_OPTIONS(NSUInteger, NSSearchPathDomainMask) {    NSUserDomainMask = 1,          NSLocalDomainMask = 2,         NSNetworkDomainMask = 4,       NSSystemDomainMask = 8,         NSAllDomainsMask = 0x0ffff };

获取Documents目录路径

NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES); 

NSString

+ (NSString *)pathWithComponents:(NSArray<NSString *> *)components;

各个路径组件构成路径

@property (readonly, copy) NSArray<NSString *> *pathComponents;

返回各个路径组件

@property (getter=isAbsolutePath, readonly) BOOL absolutePath;

是否是绝对路径

@property (readonly, copy) NSString *lastPathComponent;

返回最后的路径组件

@property (readonly, copy) NSString *stringByDeletingLastPathComponent;

删除最后的路径组件

- (NSString *)stringByAppendingPathComponent:(NSString *)str;

添加路径组件

@property (readonly, copy) NSString *pathExtension;

返回文件扩展名

@property (readonly, copy) NSString *stringByDeletingPathExtension;

删除文件扩展名

- (nullable NSString *)stringByAppendingPathExtension:(NSString *)str;

添加文件扩展名

NSString *stringByAbbreviatingWithTildeInPath;

将系统主目录替换为“~”

NSString *stringByExpandingTildeInPath;

将“~” 替换为系统主目录

NSString *stringByStandardizingPath;

通过尝试解析~、..、.、和符号链接来标准化路径

NSString *stringByResolvingSymlinksInPath;

尝试解析路径中的符号链接

- (NSArray<NSString *> *)stringsByAppendingPaths:(NSArray<NSString *> *)paths;

批量添加多个路径,得到一个路径数组

@property (readonly) const char *fileSystemRepresentation

返回文件路径的c字符串

- (BOOL)getFileSystemRepresentation:(char *)cname maxLength:(NSUInteger)max;

获取文件路径的c字符串

NSArray

- (NSArray<NSString *> *)pathsMatchingExtensions:(NSArray<NSString *> *)filterTypes;

过滤数组中的文件类型

0 0
原创粉丝点击