1

我使用 TBXML 从网上下载一个 .xml 文件。我正确地解析了文件,我得到了我想要的所有数据。

我的问题是我更新了服务器上的文件,但它没有在应用程序中更新。它仅在我删除并重新安装该应用程序时才更新文件。

是否有某种缓存或其他东西?

这就是我订购 fetch 的方式:

-(void)getXML {

    NSLog(@"Updating ATC data !");

    // Create a success block to be called when the async request completes
    TBXMLSuccessBlock successBlock = ^(TBXML *tbxmlDocument) {

        // If TBXML found a root node, process element and iterate all children
        if (tbxmlDocument.rootXMLElement)
            [self traverseElement:tbxmlDocument.rootXMLElement];
    };

    // Create a failure block that gets called if something goes wrong
    TBXMLFailureBlock failureBlock = ^(TBXML *tbxmlDocument, NSError * error) {
        NSLog(@"Error! %@ %@", [error localizedDescription], [error userInfo]);
    };

    // Initialize TBXML with the URL of an XML doc. TBXML asynchronously loads and parses the file.
    TBXML *tbxml = [[TBXML alloc] initWithURL: [NSURL URLWithString:@"http://www.mysite.com/myFile.xml"] 
                                      success: successBlock 
                                      failure: failureBlock];

}

这就是我在后台调用它的方式:

[self performSelectorInBackground:@selector(getXML) withObject:Nil];

由于 TBXML 是异步工作的,因此在后台调用它可能没有用,如果有人可以确认我会将它拿走。另外,我认为我的traverseElement:方法的代码在这里没有用,因为文件被正确解析。

感谢您的帮助!

4

1 回答 1

0

似乎问题消失了。它工作正常,但我不知道为什么它一开始就不起作用。

于 2012-11-20T15:38:21.213 回答