假设我想检查文件夹/用户中是否存在file1,file2和file3,这样如果找到这些文件中的任何一个,我就会有条件地触发一个动作。我该怎么做呢?
非常感谢任何帮助!
答案 0 :(得分:1)
使用NSFileManager的fileExistsAtPath
方法检查已知路径中是否存在文件。
- (BOOL)fileExistsAtPath:(NSString *)path;
- (BOOL)fileExistsAtPath:(NSString *)path isDirectory:(BOOL *)isDirectory;
使用以下方法......
BOOL file1Exists = [[NSFileManager defaultManager] fileExistsAtPath:file1Path];
BOOL file2Exists = [[NSFileManager defaultManager] fileExistsAtPath:file2Path];
BOOL file3Exists = [[NSFileManager defaultManager] fileExistsAtPath:file3Path];
答案 1 :(得分:0)
使用此代码检查文件是否存在于文档目录中。
NSString *filePath1 = [[NSString alloc] initWithFormat:@"%@",[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"filePath1.txt"]];
NSString *filePath2 = [[NSString alloc] initWithFormat:@"%@",[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"filePath2.txt"]];
NSString *filePath3 = [[NSString alloc] initWithFormat:@"%@",[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"filePath3.txt"]];
if([[NSFileManager defaultManager] fileExistsAtPath:filePath1] || [[NSFileManager defaultManager] fileExistsAtPath:filePath2] || [[NSFileManager defaultManager] fileExistsAtPath:filePath3]) {
//code.....
}
我认为这会对你有所帮助。您可以为任意数量的文件执行此操作。
答案 2 :(得分:0)
在iOS中,所有文件都将存储在文档目录中。在Doc Dir中搜索文件。
NSArray *doc=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docPath = [doc objectAtIndex:0];
NSString *filePath= [NSString stringWithFormat:@"%@/file1",docPath];
NSFileManager *fileManager =[NSFileManager defaulManager];
BOOL result= [fileManager fileExistsAtPath:filePath];
通过此结果,您可以触发要运行的操作。