Я пытаюсь загрузить онлайн-файл, сохранить его локально, а затем проанализировать его с помощью TBXML!
Проблема в том, что TBXML работает только с этим кодом:
TBXML *tbxml = [[TBXML tbxmlWithXMLFile:@"data.xml"] retain];
Для загрузки я использую этот код:
NSError *err = [[[NSError alloc] init] autorelease];
NSString *url = [[NSString stringWithFormat:@"http://url/data.xml"] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *myFile = [NSString stringWithContentsOfURL:[NSURL URLWithString:url] encoding:NSUTF8StringEncoding error:&err];
и это работает!
Теперь у меня есть все данные в "myFile" NSString!
Для записи в файл, я использую это (и, вероятно, здесь есть проблема!)
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSError *error;
NSString *myFile = [documentsDirectory stringByAppendingPathComponent:@"abc.xml"];
BOOL succeed = [myTxtFile writeToFile:myFile atomically:YES encoding:NSUTF8StringEncoding error:&error];
if (!succeed){
NSLog(@"no");
}
и это работает! если я сделаю это
NSString *myString = [[NSString alloc] initWithContentsOfFile:myFile encoding:NSUTF8StringEncoding error:NULL];
NSLog(@"%@", myString);
все работает, я вижу все данные из xml!
Проблема в том, когда я вызываю метод для его анализа с помощью TBXML
это
TBXML *tbxml = [[TBXML tbxmlWithXMLFile:myString] retain];
авария! Я думаю, что TBXML нужен локальный файл, сохраненный в каталоге проекта!
Как я могу это сделать?
благодарю вас! :)