美文网首页
NSXMLParser遇到的坑

NSXMLParser遇到的坑

作者: 在草地上奔跑的壮汉 | 来源:发表于2016-05-20 13:45 被阅读505次

    因为项目要解析HTML文件,再HTML文件转换一下子,在TextView中展示,相当于做一个小型的浏览器了..
    将AttributeString转换为HTML文件输出.
    将HTML文件转换为AttributeString输入.
    HTML输入需要用NSXMLParser进行解析.
    但是问题来了!
    NSXMLParser不能解析nbsp;和copy;这种特殊符号,google了一下,说是在HTML文件的第一行加上

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE naughtyxml [
        <!ENTITY nbsp " ">
        <!ENTITY copy "©">
    ]>
    

    或者

    <?xml version="1.0"?>
    <!DOCTYPE data PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    

    这样虽然NSXMLParser代理方法不报错了,不过它貌似没提供代理方法说那个地方出现了这种符号.

    走投无路还是选择了OCGumbo,谷歌的这个开源库.
    亚哈雷HTML解析就得交给HTML解析框架去做啊.

    方法二

    可以先读HTML,然后批量替换这些特殊字符,nbsp,copy啊什么的,都替换正确了.然后再用XMLParser扫描.

    相关文章

      网友评论

          本文标题:NSXMLParser遇到的坑

          本文链接:https://www.haomeiwen.com/subject/isrnrttx.html