zoukankan      html  css  js  c++  java
  • NSURL

    1. NSURL的简介

      URL是对可以从互联网上得到的资源的位置和访问方法的一种简介的表示,是互联网上标准资源的地址。URL可能包含远程服务器上的资源位置,本地磁盘上的文件的路径,甚至任意一段编码的数据。NSURL是为了方便我们操作。

    2. NSURL的用途

    (1)对于代表本地文件的url,您也可以直接操作这些文件的属性。例如,修改文件的最后修改日期。

    (2)可以使用url进行网络通信。例如,您可以使用NSURLSession NSURLConnection,和NSURLDownload类来访问远程资源的内容。

    (3)可以使用url读写本地文件。例如,你可以通过一个本地文件的URL,调用stringWithContentsOfURL方法,得到NSString格式的文件内容。

    (4)可以使用url进行通讯。例如:可以用openURL:方法来拨打电话。

    3 .举例

    (1)URL的初始化

        NSURL * url = [NSURL URLWithString:@"http://www.baidu.com/search?id=1"];

    (2)UTF8编码

        NSString * UTF8String = [[NSString  alloc] init];

        UTF8String = [UTF8String stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    (3)根据文件名称和文件后缀获取程序包内容文件的路径

       NSURL *filePathString = [[NSBundle mainBundle]           URLForResource:@"simple"withExtension:@"html"subdirectory:@"KindEditor/examples"];

        //URLForResource:文件名称

        //withExtension:文件后缀

        //subdirectory:在程序包中的哪个子目录中寻找.

        //如果没有找到将会返回nil

        NSString * filePathString = [[NSString alloc] init];

        [filePathString stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

        NSURL * url_1 = [NSURL fileURLWithPath:filePathString];

    (4)URL的组成部分

          NSLog(@"协议:%@",[url scheme]);

          NSLog(@"主体:%@",[url host]);

          NSLog(@"完整的url字符串:%@",[url absoluteString]);

          NSLog(@"完整的url:%@",[url absoluteURL]);

          NSLog(@"%@",[url baseURL]);

          NSLog(@"%s",[url fileSystemRepresentation]); //描述的文件系统表示格式和字体文件编码

          NSLog(@"%@",[url fragment]);                 //标示符

          NSLog(@"最后一个组件:%@",[url lastPathComponent]);        //最后一个组件

          NSLog(@"参数字符串:%@",[url parameterString]);

          NSLog(@"密码:%@",[url password]);

          NSLog(@"用户:%@",[url user]);

          NSLog(@"路径:%@",[url path]);

          NSLog(@"URL的路径组成:%@",[url pathComponents]);

          NSLog(@"URL的扩展路径:%@",[url pathExtension]);

          NSLog(@"URL的端口号:%@",[url port]);

          NSLog(@"URL的查询字符串:%@",[url query]);

          NSLog(@"URL的资源说明符:%@",[url resourceSpecifier]);

     

    2016-03-23 11:27:34.249 NSURL[1343:60114] 协议:http

    2016-03-23 11:27:34.250 NSURL[1343:60114] 主体:www.baidu.com

    2016-03-23 11:27:34.250 NSURL[1343:60114] 完整的url字符串:http://www.baidu.com/search?id=1

    2016-03-23 11:27:34.250 NSURL[1343:60114] 完整的url:http://www.baidu.com/search?id=1

    2016-03-23 11:27:34.250 NSURL[1343:60114] (null)

    2016-03-23 11:27:34.251 NSURL[1343:60114] /search

    2016-03-23 11:27:34.251 NSURL[1343:60114] (null)

    2016-03-23 11:27:34.251 NSURL[1343:60114] 最后一个组件:search

    2016-03-23 11:27:34.251 NSURL[1343:60114] 参数字符串:(null)

    2016-03-23 11:27:34.251 NSURL[1343:60114] 密码:(null)

    2016-03-23 11:27:34.251 NSURL[1343:60114] 用户:(null)

    2016-03-23 11:27:34.252 NSURL[1343:60114] 路径:/search

    2016-03-23 11:27:34.252 NSURL[1343:60114] URL的路径组成:(

        "/",

        search

    )

    2016-03-23 11:27:34.252 NSURL[1343:60114] URL的扩展路径:

    2016-03-23 11:27:34.252 NSURL[1343:60114] URL的端口号:(null)

    2016-03-23 11:27:34.252 NSURL[1343:60114] URL的查询字符串:id=1

    2016-03-23 11:27:34.252 NSURL[1343:60114] URL的资源说明符://www.baidu.com/search?id=1

  • 相关阅读:
    python PIL实现图片合成
    pycharm在windows中如何安装dlib?
    Git将文件上传至Github过程
    安装skimage和cv2
    ubuntu下pip的安装,更新及卸载
    pycharm专业版激活破解(亲测有效)
    docker部署tensorflow serving以及模型替换
    Keras在MNIST实现LeNet-5模型训练时的错误?
    Ubuntu中VMware tools的安装步骤
    win10执行Tensorflow,总是会报错“DLL load failed: 找不到指定的模块”的解决方式----终极版方式
  • 原文地址:https://www.cnblogs.com/shifenglin/p/5310589.html
Copyright © 2011-2022 走看看