- (void)renamedFiles {
// 找到文件路径
NSString *filePath = @"/Users/admin/Desktop/指定文件夹";
// 工程目录
NSString *BASE_PATH = filePath;
NSFileManager *myFileManager = [NSFileManager defaultManager];
NSDirectoryEnumerator *myDirectoryEnumerator = [myFileManager enumeratorAtPath:BASE_PATH];
BOOL isDir = NO;
BOOL isExist = NO;
//列举目录内容,可以遍历子目录
for (NSString *path in myDirectoryEnumerator.allObjects) {
[self.dataLock lock];
isExist = [myFileManager fileExistsAtPath:[NSString stringWithFormat:@"%@/%@", BASE_PATH, path] isDirectory:&isDir];
if (isDir) {
NSLog(@"目录路径:%@", path); // 目录路径
} else {
NSLog(@"文件路径:%@", path); // 文件路径
NSString *containString = @"指定字符串";
NSString *copyPath = [path mutableCopy];
if ([copyPath containsString:containString]) {
// 原来的文件目录
NSString* fromFileName = [filePath stringByAppendingPathComponent:path];
// 改变之后的文件名
NSString* changedStr = [path stringByReplacingOccurrencesOfString:containString withString:@""];
// 改变之后的文件目录
NSString* toFileName = [filePath stringByAppendingPathComponent:changedStr];
NSError *error;
// 替换,其实也是重命名
BOOL isSuccess = [myFileManager moveItemAtPath:fromFileName toPath:toFileName error:&error];
if (isSuccess) {
NSLog(@"rename success");
BOOL isDelSuccess = [myFileManager removeItemAtPath:path error:nil];
if (isDelSuccess) {
NSLog(@"remove success");
} else {
NSLog(@"remove fail");
}
}else{
NSLog(@"rename fail");
}
}
}
[self.dataLock unlock];
}
}
- (NSLock *)dataLock{
if (_dataLock == nil) {
_dataLock = [[NSLock alloc] init];
}
return _dataLock;
}
iOS 修改文件名称
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 不说废话了,先上代码吧,html代码比较简单自己丰富一下把 然后是我的php代码 注:php验证功能没写全,用的自...
- NSFileManager *fileManager= [NSFileManager defaultManager...
- 1、移动一个source 到destinatoin 语法:mv [-fiu] source destination...
- 批量修改文件名 分享地址:https://pan.baidu.com/s/1OJJnPvCOcFSj85RVB0d...