博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NSFileHandle(文件对接器)
阅读量:4921 次
发布时间:2019-06-11

本文共 2218 字,大约阅读时间需要 7 分钟。

1 #import "ViewController.h" 2  3 @interface ViewController () 4  5 @end 6  7 @implementation ViewController 8  9 - (void)viewDidLoad {10     [super viewDidLoad];11    //由于文件对接器不能创建文件,所以必须借助文件管理器创建文件,12     NSString *documents = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];13     14     NSString *filePath = [documents stringByAppendingPathComponent:@"text.txt"];15     NSString *str = @"123456789abcdedfghij";16     [str writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];17     NSLog(@"%@",filePath);18     19     //文件对接器,对文件内容进行操作20     21     //读取22     NSFileHandle *readFileHandle = [NSFileHandle fileHandleForReadingAtPath:filePath];23     //从文件中得到可用数据24     //NSData *availableData = [readFileHandle availableData];25     //NSLog(@"%@",[[NSString alloc] initWithData:availableData encoding:NSUTF8StringEncoding]);26     27     //从当前节点,读取指定长度的数据,须把前边的availbleData注掉,不然取不到28     NSData *lengthData = [readFileHandle readDataOfLength:10];29     NSLog(@"%@",[[NSString alloc] initWithData:lengthData encoding:NSUTF8StringEncoding]);30     31     //设置节点偏移量32     [readFileHandle seekToFileOffset:0];33     NSData *lengthData2 = [readFileHandle readDataOfLength:5];34     NSLog(@"%@",[[NSString alloc] initWithData:lengthData2 encoding:NSUTF8StringEncoding]);35     36     NSData *lengthData3 = [readFileHandle readDataOfLength:5];37     NSLog(@"%@",[[NSString alloc] initWithData:lengthData3 encoding:NSUTF8StringEncoding]);38     //从当前节点读取到文件末尾39     NSData *endData = [readFileHandle readDataToEndOfFile];40     NSLog(@"%@",[[NSString alloc] initWithData:endData encoding:NSUTF8StringEncoding]);41     42     //关闭文件43     [readFileHandle closeFile];44     //写入数据45     NSFileHandle *writeHandle = [NSFileHandle fileHandleForWritingAtPath:filePath];46     47     //设置节点位置48     [writeHandle  seekToFileOffset:10];49     //写入50     [writeHandle writeData:lengthData];51     //获取节点偏移量52     NSInteger offset = [writeHandle offsetInFile];53     NSLog(@"%ld",offset);54     55     //将文件长度设置为偏移量56     [writeHandle truncateFileAtOffset:40];57     //关闭文件58     [writeHandle closeFile];59     60     61 }

 

转载于:https://www.cnblogs.com/DevinSMR/p/5263692.html

你可能感兴趣的文章
直播软件在新页面登录后,关闭登录页面并刷新原先页面功能实现
查看>>
初识github之项目创建
查看>>
delphi登录QQ用的MD5密文生成单元
查看>>
推荐一个纯JavaScript编写的图表库——Highcharts
查看>>
颜色拾取器
查看>>
docker-compose 构建mongodb并导入基础数据示例
查看>>
20道JVM试题.
查看>>
批量修改样式及全选反选
查看>>
(转载)有关音频编码的知识与技术参数
查看>>
ADB控制手机命令
查看>>
[动态规划]从新手到放弃
查看>>
windows下,emacs的配置文件在哪儿?
查看>>
phpcms v9模版调用代码大全(全面而实用)
查看>>
缓存三大问题及解决方案
查看>>
win2003 session丢失
查看>>
windows下 ionic 打包app --以安卓版本为例
查看>>
XML文件操作类--创建XML文件
查看>>
(转)SqlServer2008 数据库同步:发布、订阅
查看>>
简介CentOS与 Ubuntu的不同
查看>>
桌面SVN文件操作
查看>>