English 中文(简体)
高效删除多个含有子字符串名称的多个文件
原标题:Delete multiple files with names containing a substring efficiently

我想删除包含子字符串的多个文件。 例如, 我想删除所有有子字符串的文件 < code> my 。 假设我的目录包含4个文件 : < enger> photo.jpg , < strong> myPhoto.jpg , < strong > bachemyPhoto.jpg , < anny > photo.jpg , 因为搜索术语是 < code> my , 我想要删除的文件是 < engger>myPhoto.jpg 和 < streng > begard > bachechourmyPhoto.jpg (案件不敏感)。

我提议的解决方案(我知道如何做)是使用 NSFileManager 类,并使用函数 contentsof DimentyAtPath:error: 阅读所有目录内容,然后通过环状搜索点击。如果发现被击中,我删除该文件。

我建议的解决办法中不喜欢的是,它效率不高,特别是如果目录包含太多的文件,被击中的文件数量很少。 是否有更有效的办法做到这一点?

问题回答

如果您不想将大数组装入内存, 您可以尝试 < code> - [NSFileManager enumberatorAtURL: 包括 PropertysForKeys: options:errorHandler:] 。 由于您只想要目录的即时内容, 您会为其返回的每个目录引用 < code> - [NS Intitutor Enumberator chappleDescendants]

如果您的关心正在对目录中的所有项目进行循环, 测试匹配模式, 那么这是不可避免的。 您希望使用的任何技术都必须以某种方式对目录中的所有项目进行循环, 并测试匹配。 唯一的问题在于该循环是否暴露在您身上。 在可可中, 问题是 。 如果您想要一个替代功能, 您可以将它降至 < a href=> https:// developer. appple. com/library/mac/ #documentation/ Darwin/ Reference/ ManPages/ man3/ glob.3" rel=" nofol"\\\code> glob () 函数, 如果您想要一个替代功能, 也可以降至 。





相关问题
List Contents of Directory in a UITableView

I am trying to list the contents of Ringtones directory in a TableView, however, I am only getting the last file in the directory in ALL cells, instead of file per cell. This is my code: - (...

iPhone NSUserDefaults persistance difficulty

In my app i have a bunch of data i store in the NSUserdefaults. This information consists of an NSObject (Object1) with NSStrings and NSNumbers and also 2 instances of yet another object (Object2). ...

Writing a masked image to disk as a PNG file

Basically I m downloading images off of a webserver and then caching them to the disk, but before I do so I want to mask them. I m using the masking code everyone seems to point at which can be found ...

Resize UIImage with aspect ratio?

I m using this code to resize an image on the iPhone: CGRect screenRect = CGRectMake(0, 0, 320.0, 480.0); UIGraphicsBeginImageContext(screenRect.size); [value drawInRect:screenRect blendMode:...

Allowing interaction with a UIView under another UIView

Is there a simple way of allowing interaction with a button in a UIView that lies under another UIView - where there are no actual objects from the top UIView on top of the button? For instance, ...

热门标签