OC之文件和网络及解析(笔记)

来源:互联网 发布:adobe软件如何下载 编辑:程序博客网 时间:2024/06/03 05:31
OC之文件和网络及解析
文件:
储存在本地的图片,音频、视频等内容。是数据在储存介质上的存储形式。.jpg  .txt   .mp3   .mp4  .c  .m  .xml等等(后缀)只有windows上有。

目录:
即文件夹;
文件的储存形式。
NSData类  字节数据缓冲类:主要用于网络传输数据的缓冲存储
二进制数据: 图片、声音、视频以及网络上传送的数据流。

NSStream类  文件流: 
 常用语文件操作;
有两个子类:
NSInputStream 输入流,读取文件内容
NSOutputStream输出流,写入文件内容

NSFileManager类   文件管理类
可以对文件、目录进行。
创建create;删除remove;移动move;查询目录。

NSURL;
NSURLRequest;
NSURLConnection;
NSURLResponse;
NSError;
前两步同步和异步是一样的。
异步在后面的话 ViewController中写上
的代理协议
然后调用三种异步请求connection代理方法;

NSBundle 类  对应沙盒文件里的.app文件目录(打包好的数据流)app文件是只读文件,不能修改、移动、删除。
沙盒   文件的目录是完全随机数,保证其他用户访问不到。
苹果电脑桌面上安装第三方软件没有快捷方式(除非用户操作),它认为它只针对自身负责,不允许该软件访问别人。

优点:不会中病毒,木马;缺点:不能随意访问别人,有很大的局限性。

编程时:
源码存储,项目源目录
二进制可执行文件 放置在bundle,

UIImageView 图像视图,相当于相框,用于展示图像

网络:储存在远程服务器上的文件。
访问储存硬件介质上的资源,一种是本地(文件),一种是远程(网络)。

网络请求方式
HTTP请求方式:
GET请求;
POST请求。
两种方式的区别:
GET通常用于请求URL并得到资源;(有大小限制,不可以超过255字符);发送不敏感的信息给服务器
POST用于向服务器添加新的内容。(无大小限制,可以超过255字符);数据安全,发送一些敏感信息给服务器;

网络连接方式
URL链接方式;
    同步连接:协同一致,上一件事情是下一件事情的前提。
    异步联接。上一件事情不是下一件事情的执行基础,可以同时进行。

两种方式的主要区别:
    同步连接时,UI“冻结”;请求小量数据的时候。
    异步连接时,UI不冻结。异步的东西都是复杂的,

同步连接
    同步连接是IOS中网络连接的一种方式,当请求的数据量小时,同步连接是一个很好的选择。
    UI“冻结”是它的一个缺点。
GET和POST两种请求都可以发起同步连接。

GET同步连接
从URL初始化数据
NSString/NSData/NSArray/UIImage等类都有从URL初始化数据的方法,这个方法便是系统封装好的GET请求的同步连接方式。
1、创建URL对象;
2、创建请求对象;
3、创建网络连接。

异步连接
   异步连接是IOS最常用的一种网络连接方式。
   适应传输数据量大(像图片)。
   用户体验好,就是UI不冻结。

GET异步连接
NSURLRequest对象
1、创建URL对象;
2、创建一个请求;
3、发起异步连接;

数据解析
   1、解析是从繁杂的数据中筛选出自己需要的数据;
   2、我们要分析的数据一般是提前规定好的;
   3、解析分为XML解析、JSON解析等。

XML文件
XML(Extensible Markup Language)即可扩展标记语言
   简单的数据存储语言;
   文本文件,编写简单;
   结构清晰,各种语言都提供了对XML的解析支持
   它主要用于数据存储。

语法:
   标签是成对的,使用对称标签描述内容;
   每对标签称为一个节点;
   标签区分大小写。
如: 唐sir

注意:
   XML应该有一个根节点;结束标签为“</>”
用途:
存储数据;网络传输;应用配置等

例子:

<Students><!--根节点-->

   <Student><!--子节点-->

       <Name>唐sir</Name><!--学员姓名-->

       <Age>20</Age><!--学员年龄-->

       <Address>东土大唐</Address><!--学员地址-->

   </Student>

   <Student>

       <Name>老孙</Name>

       <Age>1000</Age>

      <Address>花果山</Address>

   </Student>

</Students>

XML解析:从XML格式中抽取这些信息的过程我们称为XML解析。
XML解析工具:
1、GDataXMLNode是google为iOS开发提供的XML解析工具;
2、你需要加入GDataXMLNode.h以及GDataXMLNode.m文件。这两个文件内包含了3个类GDataXMLNode、GDataXMLElement、GDataXMLDocument
3、使用此工具的时候需要引入libxml2.dylib框架并且需要在header searchpath中添加一个路径

JSON解析
    JSON是另外一种数据格式组织形式。
规则:大括号代表字典,中括号(或小括号)代表数组。冒号左右两边分别为键和值。数据与数据之间用逗号分隔。
  • [{"name":"kallen","age":"26","sex":"男"},{'"name":"alex","age":"24","sex":"男"}]

JSON解析工具

 JSON解析的工具很多,比如SBJSON、TouchJSON、JSONKit等工具,我们可以选择一个JSON。

解析总结

JSON是一种比XML更轻量的数据格式。

XML比JSON更灵活。





0 0