IOS 获取网络地址的html字符串 本地获取网络图片

来源:互联网 发布:护肤品套装知乎 编辑:程序博客网 时间:2024/04/30 15:58

获取网络地址的url:

注意:URL必须全部填写http://www.baidu.com/
说下我在使用中遇到的问题吧: 首先 IOS是相当纤细的,有时候一丁点的错误可能就会造成严重失败.下面的代码是通过网络学习的,代码很简单,看注释就可以了,我在这里说一下注意事项,大家都知道OC中url必须填写http:// 这个在学习webView的时候就会知道了.但是如果你想获取html就必须将地址后面的斜划线”/”也带上. 下面是获取html源文件的两种方法.

第一种方法:
这个方法唯一注意的地方就是编码格式了.如果返回了null并且url无误就尝试用其他的编码格式吧,里面有我测试出来可以转换顶级域名的编码枚举值 NSUTF8StringEncoding无法获取顶级域名(非hppt://www开头的域名)的源代码.

//获取url 这个方法获取的mthl如果有中文 则中文显示为乱码    NSURL * url =[NSURL URLWithString:strUrl];    //使用NSUTF8StringEncoding编码格式返回html文本 此格式无法返回顶级域名的html(html)可以使用其他的编码格式1 5 9 11 12 14 15 21 30均可获得顶级域名的html    NSString * str = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];    NSLog(@"%@",str);

第二种方法:
这个方法没有进行过多测试,跟上面一样 不行就换编码格式,当然对于懂html的人来说是小菜.不懂的就依次换吧,直到满意为止.这个方式获取的源代码中文不会出现乱.
代码出处:http://www.th7.cn/Program/IOS/201301/121725.shtml/;

    //同样获取url 这个方式获取的html没有乱码    NSURL * url = [NSURL URLWithString:strUrl];    //获取url中的数据文件8位16进制    NSData * data = [NSData dataWithContentsOfURL:url];    //创建一个编码格式    NSStringEncoding  enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);    //使用创建的编码格式对数据进行转换 返回html字符串

将网络图片加载到本地设备:

这个不多解释了

    //获取网络图片地址的url    NSURL * url1 = [NSURL   URLWithString:@"http://image.uuu9.com/pcgame/lol/UploadFiles/201507/201507171015056351.png"];    //从url获取数据文件    NSData * data= [NSData dataWithContentsOfURL:url1];    //将数据文件转换成image文件    UIImage * img = [UIImage imageWithData:data];
0 0
原创粉丝点击