首页 / 汽车 / SUV / 正文

stringwithformat(利用GCD进行数据持久化的方式(一))

放大字体  缩小字体 来源:立春的诗句古诗 2026-04-17 17:27  浏览次数:9

.............好吧 我看了看发现全是英文((⊙o⊙)…,这不是废话么).既然是废话,那咱们直接上干货(求各位看官赎罪,我也只是刚刚了解到基本的用法)

打印出来有助于检查文件是不是被写进去了,但是这里我发现了一个问题,不过不影响读取,稍后我在抛出这个问题

我来解释一下这个鬼的几个参数,第一个使我们路径转成的char类型,没办法,纯C的东西.后面的是可变长度参数类型,这里填写的是我们获取的权限,我在网上找了一些后面参数的解释

搞定这些之后我们需要给gcd搞一个通道channle,创建通道的方式也是有好几种,我先给大家介绍一下创建通道的几个参数吧

dispatch_io_create_with_path(dispatch_io_type_t type,
    const char *path, int oflag, mode_t mode,
    dispatch_queue_t queue,
    void (^cleanup_handler)(int error));

另外一个是 1 需要我们创建一个offset参数用来找到file的descriptor

上面只是创建通道的一种方式,如果我记得不错的话应该是一共有4种,其他的各位看官们可以自己试试

然后我们开始把上面这句话搞到gcd的data里面去

dispatch_data_t datas = dispatch_data_create(daxiao, size, myQueue, NULL);

这样我们就可以把Hello World !写入文件了,从路径打开文件查看,的确写入了,但是不知道为何后面会多出许多没用的东西来,这个也是我最一开始提到的问题,目前我还没有闹明白,如果哪位大神知道是咋回事,还请告知小弟,不胜感激!!!

下面我们开始读取已经写好的文件

第一行就是我说的设定最高读取上限,后面那个1 是最高读取1字节,所以如果你运行成功后会发现 dispatch_io_read后面的回调block会走好几遍,也就是说

好吧,我文笔有限,后面我会继续讲解GCD数据持久化的另外一种方式,不过大同小异,有兴趣的看官可以继续到我这里来看看.

最后:由于我也是刚刚了解这个东西,再加上本人英语渣渣,难免会有错误的敌方,欢迎各位大神不吝赐教,指出错误,小弟在此拜谢!

打赏
0相关评论
热门搜索排行
精彩图片
友情链接
声明:本站信息均由用户注册后自行发布,本站不承担任何法律责任。如有侵权请告知立立即做删除处理。
违法不良信息举报邮箱:115904045
头条快讯网 版权所有
中国互联网举报中心