Objiect-C中的文件操作

    NSString *path = [NSHomeDirectory() stringByAppendingString:@"/Documents/1.txt"];//获取home目录下某个目录
    NSLog(@"%@",path);//打印luj
    NSString *str = @"Hellow,world!";
    NSData *dat = [str dataUsingEncoding:NSUTF8StringEncoding];//将字符串转化为二进制数据
    [[NSFileManager defaultManager] createFileAtPath:path contents:dat attributes:nil];//创建文件
    
    NSFileHandle *fileHand = [NSFileHandle fileHandleForWritingAtPath:path];//以只写的方式打开文件
    [fileHand seekToEndOfFile];//指向文件尾
    NSString *str1 = @"Hello,everyone!";
    NSData *dat1 = [str1 dataUsingEncoding:NSUTF8StringEncoding];//将字符串转化为二进制数据
    [fileHand writeData:dat1];//写入文件
    NSLog(@"%llu",fileHand.offsetInFile);
    
    [fileHand seekToFileOffset:0];//偏移到文件开始位置
    NSData *dat2 = [@"-------" dataUsingEncoding:NSUTF8StringEncoding];//将字符串转化为二进制数据
    [fileHand writeData:dat2];//写入文件
    [fileHand writeData:[@"++++++*******" dataUsingEncoding:NSUTF8StringEncoding]];//将字符串转化为二进制数据
    NSLog(@"%llu",fileHand.offsetInFile);
    
    [fileHand closeFile];//关闭文件
    
    NSFileHandle *rFileHandle = [NSFileHandle fileHandleForReadingAtPath:path];//以只读的方式打开文件
    NSData *dat3 = [rFileHandle readDataOfLength:15];//读取一定字节的数据
    NSString *str2 = [[NSString alloc] initWithData:dat3 encoding:NSUTF8StringEncoding];//将二进制数据转化为字符串
    NSLog(@"%@",str2);
    NSLog(@"%llu",rFileHandle.offsetInFile);
    [rFileHandle seekToFileOffset:0];//偏移到文件开始位置
    NSLog(@"%@",[[NSString alloc] initWithData:[rFileHandle readDataOfLength:5] encoding:NSUTF8StringEncoding]);
    NSLog(@"%llu",rFileHandle.offsetInFile);
    
    [rFileHandle closeFile];//关闭文件
    NSLog(@"********************************************************************");
    NSFileHandle *rwFileHandle = [NSFileHandle fileHandleForUpdatingAtPath:path];//以读写的方式打开文件
    [rwFileHandle seekToEndOfFile];//指向文件尾
    [rwFileHandle writeData:[@"1234567890" dataUsingEncoding:NSUTF8StringEncoding]];//写入文件
    [rwFileHandle seekToFileOffset:0];//偏移到文件开始位置
    NSString *str3 = [[NSString alloc] initWithData:[rwFileHandle readDataToEndOfFile] encoding:NSUTF8StringEncoding];//读取全部的数据

    NSLog(@"%@",str3);

    [rwFileHandle closeFile];


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值