NSString+Path.m 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. //
  2. // NSString+Path.m
  3. // FunSDKDemo
  4. //
  5. // Created by XM on 2018/5/5.
  6. // Copyright © 2018年 XM. All rights reserved.
  7. //
  8. #import "NSString+Path.h"
  9. @implementation NSString (Path)
  10. #pragma mark - 鱼眼模式保存的路径
  11. + (NSString *)fisheyeInfoFile {
  12. NSString *SSIDinfoFile = [[NSString configFilePath] stringByAppendingString:@"fisheyeInfo.plist"];
  13. return SSIDinfoFile;
  14. }
  15. #pragma mark - 是否支持视频矫正保存的路径
  16. + (NSString *)correctInfoFile
  17. {
  18. NSString *SSIDinfoFile = [[NSString configFilePath] stringByAppendingString:@"correctInfo.plist"];
  19. return SSIDinfoFile;
  20. }
  21. #pragma mark - 配置文件保存的路径
  22. + (NSString *)configFilePath {
  23. NSString *configFilePath = [[NSString cachesPath] stringByAppendingString:@"/Configs/"];
  24. [NSString checkDirectoryExist:configFilePath];
  25. return configFilePath;
  26. }
  27. #pragma mark -- 保存的图片路径
  28. + (NSString *)pictureFilePath {
  29. NSString *file = [self getPhotoPath];
  30. NSString *filePath = [file stringByAppendingPathComponent:picturePlist];
  31. return filePath;
  32. }
  33. #pragma mark - 生成一个设备缩略图文件名
  34. + (NSString *)devThumbnailFile:(NSString*)devId andChannle:(int)channle {
  35. NSString *devThumbnailFile = [[NSString devThumbnailPath] stringByAppendingFormat:@"/%@_%d.jpg",devId,channle];
  36. return devThumbnailFile;
  37. }
  38. #pragma mark - 设备列表中的设备缩略图
  39. + (NSString *)devThumbnailPath {
  40. NSString *devThumbnailPath = [[NSString thumbnailPath] stringByAppendingString:@"/Device"];
  41. [NSString checkDirectoryExist:devThumbnailPath];
  42. return devThumbnailPath;
  43. }
  44. #pragma mark - 缩略图路径,包括设备缩略图,app手动录像缩略图,设备上图片,录像缩略图.以及报警历史缩略图
  45. + (NSString *)thumbnailPath {
  46. NSString *thumbnailPath = [[NSString getPhotoPath] stringByAppendingString:@"/Thumbnail"];
  47. [NSString checkDirectoryExist:thumbnailPath];
  48. return thumbnailPath;
  49. }
  50. #pragma mark - 报警历史图片
  51. + (NSString *)alarmMessagePicPath {
  52. NSString *alarmMessagePicPath = [[NSString getPhotoPath] stringByAppendingString:@"/AlarmMessagePic"];
  53. [NSString checkDirectoryExist:alarmMessagePicPath];
  54. return alarmMessagePicPath;
  55. }
  56. #pragma mark - 所有图片的保存总路径
  57. + (NSString *)getPhotoPath {
  58. NSString *photosPath = [[NSString documentsPath] stringByAppendingString:@"/Photos"];
  59. [NSString checkDirectoryExist:photosPath];
  60. return photosPath;
  61. }
  62. #pragma mark - 存储录像的路径
  63. +(NSString *)getVideoPath {
  64. NSString *file = [NSString cachesPath];
  65. return [NSString getVideoPathString:file];
  66. }
  67. + (NSString *)getVideoPathString:(NSString *)file {
  68. file = [file stringByAppendingPathComponent:@"Video"];
  69. return [NSString checkDirectoryExist:file];
  70. }
  71. // NSDocument/fileName
  72. + (NSString *)GetDocumentPathWith:(NSString *) fileName {
  73. NSString* path = [NSString documentsPath];
  74. if (fileName != nil) {
  75. path = [path stringByAppendingString:@"/"];
  76. path = [path stringByAppendingString:fileName];
  77. }
  78. return path;
  79. }
  80. + (NSString *)GetCachesPathWith:(NSString *) fileName {
  81. NSString *path = [NSString cachesPath];
  82. if (fileName != nil) {
  83. path = [path stringByAppendingString:@"/"];
  84. path = [path stringByAppendingString:fileName];
  85. }
  86. return path;
  87. }
  88. //判断当前文件夹是否存在
  89. +(NSString*)checkDirectoryExist:(NSString*)file{
  90. NSFileManager *manager = [NSFileManager defaultManager];
  91. BOOL isDir;
  92. BOOL ifExist = [manager fileExistsAtPath:file isDirectory:&isDir];
  93. if (!(isDir && ifExist)) {
  94. BOOL create = [manager createDirectoryAtPath:file withIntermediateDirectories:YES attributes:nil error:nil];
  95. if (!create) {
  96. }
  97. }
  98. return file;
  99. }
  100. //NSDocument
  101. + (NSString *)documentsPath {
  102. NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
  103. NSString *path = [pathArray lastObject];
  104. return path;
  105. }
  106. + (NSString *)cachesPath {
  107. NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
  108. NSString *path = [pathArray lastObject];
  109. return path;
  110. }
  111. @end