3

我试图让 NSXMLParser 解析一个文件,如下所示:

<message>
<id>73</id>
<data><(some BLOB data)></data>
</message>

这是我的 obj-c 代码:

- (void)request:(ASIHTTPRequest *)request didReceiveData:(NSData *)data
{
    if (receivedData == nil) {
        receivedData = [[NSMutableData alloc] init];
    }
    [receivedData appendData:data];
}

- (void)requestFinished:(ASIHTTPRequest *)request
{
    if (parser) {
        [parser release];
        parser = nil;
    }
    parser = [[[NSXMLParser alloc] initWithData:receivedData] retain];
    if (parser == nil) {
        NSLog(@"Error occured");
    }
    [parser setDelegate:self];
    [parser parse];
}

我很确定变量 receiveData 不为空。但是 NSXMLParser 一直给我这个错误:

Error Domain=NSXMLParserErrorDomain Code=4 "The operation couldn't be completed. (NSXMLParserErrorDomain error 4.)"

根据 Apple 提供的参考资料,此错误表明解析器正在解析一个空文档。有谁知道为什么?receiveData 很大,因为它包含音频信息

4

0 回答 0