a)在我的应用程序中,我希望能够将文件保存到安装应用程序时不会消失的目录。我在哪里可以保存它们?
b)我还希望能够查看目录中的所有文件并有一个显示它们的表。是否有一些方法可以获取目录的内容?有点像DOS中的dir。也许返回所有内容的数组?或者我可以将其放入数组并从中创建表格。
我知道如何建立临时目录的路径:
NSString *outputPath = [[NSString alloc] initWithFormat:@"%@%@", NSTemporaryDirectory(),
@"output.mov"];
NSURL *outputURL = [[NSURL alloc] initFileURLWithPath:outputPath];
非常感谢, -code
答案 0 :(得分:2)
将文件保存在文档目录中:
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [documentPaths objectAtIndex:0];
NSString *outputPath = [documentsDir stringByAppendingPathComponent:@"output.mov"];
通常没有必要将文件路径转换为URL。
使用Filemanager方法获取文件列表:
- (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error
对指定目录执行浅层搜索,并返回任何包含项的路径。
返回值:
NSString对象的数组,每个对象标识路径中包含的文件,目录或符号链接。如果目录存在但没有内容,则返回一个空数组。如果发生错误,此方法返回nil并将相应的错误对象分配给错误参数
答案 1 :(得分:0)
在iPhone应用程序上,您将内容保存到应用程序文档目录,您可以获得如下示例的路径:
NSArray *sysPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);
NSString *docDirectory = [sysPaths objectAtIndex:0];
NSString *filePath = [NSString stringWithFormat:@"%@/%@", docDirectory,@"output.mov"];