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