我是该网站的新用户,甚至可能更新应用程序开发,但我慢慢学习.. lol
所以我遇到了我的第一个大问题,我已经在网上进行了全面的研究,无法找到我想要的东西,所以我们走了。
我正在创建一个应用程序,该应用程序调用一些用户输入的文件,这些文件可以并且偶尔会更改。我为此添加了UIFileSharing
选项,因此用户可以通过iTunes上传文件。
需要使用3种不同类型的文件a .opt, a .pkg, and a .txt
。
有什么方法可以从目录中获取文件,读取它们,并根据文件扩展名拉出它们并在UIPickerView
轮中使用它们?我真的很陌生,所以当我要求你具体时,请原谅我。
我的假设是通过几个步骤完成此操作,首先读取文件并对它们进行排序,然后根据扩展名将它们放在一个数组中,然后使用所述数组填充选择器,并获取数量的计数行等..
我想接下来的两个部分非常简单,只需设置一个选择器来使用数组,我只需要知道是否可以根据用户加载的文件构建该数组。
提前感谢,
查
答案 0 :(得分:0)
您需要使用UIDocumentInteractionController
类。
简单示例
UIDocumentInteractionController * controller;
NSURL *fileURL=[NSURL fileURLWithPath:[self getFilePath]]
controller = [ UIDocumentInteractionController interactionControllerWithURL: fileURL ];
//如何从文档目录中获取文件
-(NSString *)getFilePath{
NSString *documentPath= [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];
return [documentPath stringByAppendingPathComponent:@"Your file name"]
}
答案 1 :(得分:0)
我解决了它们,感谢所有的帮助..代码如下,对任何感兴趣的人。别忘了定义阵列!
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSArray *bundleDirectory = [fileManager contentsOfDirectoryAtPath:documentsPath error:nil];
NSPredicate *Option = [NSPredicate predicateWithFormat:@"self ENDSWITH '.opt'"];
_OptionArray = [bundleDirectory filteredArrayUsingPredicate:Option];
_OptionPickerData = [_OptionArray copy];