NSURL 中的HTTP 中文乱码

来源:互联网 发布:centos 安装不上ibus 编辑:程序博客网 时间:2024/06/01 11:47


NSString *url_str=[NSString stringWithString:[@"http://localhost:8080/Hessian/张三/3.jpg" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSURL *url=[NSURL urlWithString:url_str];
NSData* data = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:url] returningResponse:NULL error:NULL];




1.url编码

ios中http请求遇到汉字的时候,需要转化成UTF-8,用到的方法是:

NSString * encodingString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

2.url解码

请求后,返回的数据,如何显示的是这样的格式:%3A%2F%2F,此时需要我们进行UTF-8解码,用到的方法是:

NSString *str = [model.album_name stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

例子:

    NSString *httpUrl = @"http://apis.baidu.com/apistore/aqiservice/aqi";
    NSString *httpArg = @"city=%E5%8C%97%E4%BA%AC";

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    NSString *urlString =@"荆州";

    NSString * encodingString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    NSString *httpUrl = @"http://apis.baidu.com/apistore/aqiservice/aqi";

    NSString *httpArg = [[NSString alloc]initWithFormat: @"city=%@", encodingString];


0 0
原创粉丝点击