菜鸟教程小白 发表于 2022-12-13 05:33:09

ios - NSXMLParserErrorMessage 内部错误 : Huge input lookup


                                            <p><p>我有一个需要解析 xml 文件的 IOS 应用程序,并且我一直在使用 NSXMLParser。我有一些大约 8kbytes 的 xml 数据,我收到了这个错误,但我解析较小的文件没有问题。我尝试过搜索,但在 IOS 中找不到其他有此问题的人。这是 NSXMLParser 的限制,我需要使用不同的库还是必须设置一些属性以允许更大的数据?</p>

<p>任何帮助将不胜感激。</p>

<p>编辑:
这是我从 Web 服务中检索到的文件:<a href="https://www.dropbox.com/s/3436w653reyybpb/File.xml" rel="noreferrer noopener nofollow">https://www.dropbox.com/s/3436w653reyybpb/File.xml</a> </p>

<p>这是我使用的代码:</p>

<pre><code>// XML.m
- (id)parseXml:(NSData *)data
{
    NSXMLParser *xml = [ initWithData:data];
    xml.delegate = self;
    results = [ init];
    error = nil;
    ;
    if (error) return error;
    return results;
}
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI: (NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
    ;
}
- (void) parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError
{
    error = parseError;
}
</code></pre>

<p>代码甚至没有到达 didStartElement 委托(delegate)方法,它只是直接到达 parseErrorOccured。传递的数据是我提供的文件内容。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>xml:</p>

<pre><code>&lt;?xml version=&#34;1.0&#34; encoding=&#34;utf-16&#34;?&gt;
</code></pre>

<p>指定它是 utf-16 但实际上是 utf-8</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - NSXMLParserErrorMessage 内部错误 : Huge input lookup,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/20177672/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/20177672/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - NSXMLParserErrorMessage 内部错误 : Huge input lookup