从url加载.plist文件

我有下面的代码从资源文件夹加载一个plist文件,并使用它来填充tableview:

NSString *path = [[NSBundle mainBundle] pathForResource:@"AnimeDB" ofType:@"plist"]; NSMutableArray* tmpArray = [[NSMutableArray alloc] initWithContentsOfFile:path]; self.dataList1 = tmpArray; [tmpArray release]; 

但我需要从一个URL加载.plist文件。 我尝试了一些我在网上find的解决scheme,但我无法实现它的工作。 有人知道我该怎么做?

也许有一个简单的解决scheme,但我在Xcode的开始(这是我的第一个应用程序),所以我找不到它。

任何帮助真的很感激!

PS对不起,我可能犯了任何错误,我的英语不是那么好。

我build议看看使用Json 。 它将允许您将plist结构化的数据从url传递到您的应用程序。

 NSData *dataReturn = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://someUrl.com/test.json"]]; if (dataReturn) { NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData:dataReturn options:kNilOptions error:Nil]; 

如果你想用你的plist,那么它的代码就差不多了:

 // This will get the plist into data format NSData *dataReturn = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://someUrl.com/test.plist"]]; // This will convert data format to array NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:dataReturn] 

最后,我设法用这个简单的代码来做我所需要的:

 NSMutableArray *tmpArray = [[NSMutableArray alloc]initWithContentsOfURL:[NSURL URLWithString:@"http://zer0soft.altervista.org/AnimeDB.plist"]]; self.dataList1 = tmpArray; 

它就像一个魅力! 感谢大家花时间回答我的问题,特别感谢Jaybit!