Objective-C文件流操作

本文介绍了iOS开发中流式文件处理的两种方式:NSFileHandle和NSInputStream/NSOutputStream。NSFileHandle适用于以流的方式访问文件、网络、管道、设备的数据,而NSInputStream/NSOutputStream则提供了更高级别的输入输出流功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、NSFileHandle
1.它能够以流的方式访问基于文件、网络、管道、设备的数据,可以设置写入的位置指针。
2.NSData、NSString写入文件的方法是直接覆盖写入,全部读出,当处理大数据的文件时,对内存会造成压力。而NSFileHandle能够以流的方式处理文件,而不用把整个文件的数据全部放在内存中处理。
3.该类不负责创建文件,创建文件的工作由NSFileManager来负责。
4.当对文件处理完毕时,不要忘记通过closeFile方法关闭文件,
5.相关API可以参考苹果文档。

二、NSInputStream和NSOutputStream
1.它们提供输入输出流,可以追加写入,依次读出,可以处理NSData,URL,文件等。
2.它们从NSStream继承过来。
3.NSStream提供流的监控机制。一方可以在流中写入或者读出,另一方可以监控流的数据写入和读出,使用流程如下:
(1)建立流实例,并设置delegate;
(2)将这个流对象布置在一个runloop中,并且Open流;
(3)当流事件发生时,会调用代理方法;
(4)使用代理方法stream:handleEvent处理流事件;
(5)当没有数据要处理时,清理流对象。
4.相关API可以参考苹果文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值