分享

使用TFHpple解析GB2312网页出现乱码的解决方法

 叹落花 2016-09-23

                     本篇文章主要介绍了"使用TFHpple解析GB2312网页出现乱码的解决方法",主要涉及到方面的内容,对于IOS开发感兴趣的同学可以参考一下: 在解析html网页的过程中不免会遇到一些gb2312编码的网页,若是对这类网页进行类于utf-8的解析方法进行解析,最后content里的中文显示会出现乱码情况...

在解析html网页的过程中不免会遇到一些gb2312编码的网页,若是对这类网页进行类似于utf-8的解析方法进行解析,最后content里的中文显示会出现乱码情况,即使对字符串进行gb2312的再次解码也无济于事。

因此我们需要改变思路:

第一步,用bg2312的编码得到一个NSString的网页内容。

第二步,使用stringByReplacingOccurrencesOfString的方法,将网页中的”gb2312“替换成“utf-8”。

第三步,将替换后的NSString使用dataUsingEncoding的方法,转换成NSData给TFHpple使用。

现在的思路其实就是先将gb2312转换成utf-8然后再进行解析,接下来的工作相信大家都明白就不再次赘述。

示例代码如下:

    NSString *html = [NSString stringWithContentsOfURL:url encoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000) error:nil];
    
    NSString *newHTML = [html stringByReplacingOccurrencesOfString:@"gb2312" withString:@"utf-8"];
    
    NSData *newData = [newHTML dataUsingEncoding:NSUTF8StringEncoding];
    
    NSString *currectString = [[NSString alloc] initWithData:newData encoding:NSUTF8StringEncoding];

以上就介绍了使用TFHpple解析GB2312网页出现乱码的解决方法,包括了方面的内容,希望对IOS开发有兴趣的朋友有所帮助。

本文网址链接:http://www./article/detail_127977.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多