如何从 NSArray 中删除 .DS_Store? [复制]
Posted
技术标签:
【中文标题】如何从 NSArray 中删除 .DS_Store? [复制]【英文标题】:How to remove .DS_Store from NSArray? [duplicate] 【发布时间】:2014-04-01 06:57:24 【问题描述】:我有一个代码可以让对象脱离路径 @"/Users/playra/Desktop/2 DivyaLoka/Собрание Тайн"
- (void) setPathProperty:(NSString *)pathProperty
_pathProperty = pathProperty;
NSArray* allContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:pathProperty error:nil];
self.contents = allContents;
[self.tableView reloadData];
self.navigationItem.title = [self.pathProperty lastPathComponent];
在这一行下面是对象 .DS_Store
NSArray* allContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:pathProperty error:nil];
如何从那里删除它?
【问题讨论】:
【参考方案1】:试试这个:
NSMutableArray * dirContents = [[NSMutableArray alloc] initWithArray:docDir];
if([docDir containsObject:@".DS_Store"])
[dirContents removeObject:@".DS_Store"];
【讨论】:
您确定removeObject:
将删除匹配的字符串还是仅删除特定的对象实例(即字符串常量@".DS_Store"
)?
是的,它会从数组中删除
+1 但请注意,不需要检查 containsObject
。
@Mayur 它帮助了我。 ***.com/questions/5851164/… NSMutableArray *fullPaths = [NSMutableArray 数组]; NSFileManager *fileManager = [[[NSFileManager alloc] init] autorelease]; NSArray *subpaths = [fileManager subpathsAtPath:filePath]; for (NSString *subpath in subpaths) if ( ![[subpath lastPathComponent] hasPrefix:@"."] && ![[subpath lastPathComponent] isEqualToString:@"Icon\r"]) [fullPaths addObject:[filePath stringByAppendingPathComponent:子路径]]; // 继续
@setoffonom 好的,享受 :)以上是关于如何从 NSArray 中删除 .DS_Store? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
从 Mac 上的命令行删除当前文件夹和所有子文件夹中的 .DS_STORE 文件