NSFileHandle的用法

//
//  FileInfo.m
//  MemoryManage
//
//  Created by macos on 14-8-10.
//  Copyright (c) 2014年 macos. All rights reserved.
//

#import "FileDemo.h"

@implementation FileDemo
-(id) init
{
    if (self = [super init]) {
        NSFileManager *mgr =[NSFileManager defaultManager];
        NSString *path = [NSHomeDirectory() stringByAppendingString:@"/mac.text"];
        NSLog(@"%@",path);
        NSString *data=@"abcdefghijklmn";
        [mgr createFileAtPath:path contents:[data dataUsingEncoding:NSUTF8StringEncoding] attributes:Nil];
        //NSFileHandle无法创建文件
        NSFileHandle *file = [NSFileHandle fileHandleForUpdatingAtPath:path];
        NSLog(@"%@",[[NSString alloc] initWithData:[file readDataToEndOfFile] encoding:NSUTF8StringEncoding]);
        [file seekToFileOffset:0];
        NSLog(@"length:%lu",[file availableData].length);
        [file seekToEndOfFile];
        NSDateFormatter *datefmt = [[NSDateFormatter alloc] init];
        [datefmt setDateFormat:@" yyyy-MM-dd HH:mm:ss"];
        NSString *ndata=[datefmt stringFromDate:[NSDate date]];
        [file writeData:[ndata dataUsingEncoding:NSUTF8StringEncoding]];
        [file seekToFileOffset:0];
        [self copyFileToPath:file ToPath:[NSHomeDirectory() stringByAppendingString:@"/mac.bak.text"]];
        
        [file closeFile];
    }
    return self;
}

-(BOOL) copyFileToPath:(NSFileHandle *)srcFile ToPath:(NSString *)path
{
    NSFileManager *fm = [NSFileManager defaultManager];
    //创建新的空文件
    NSFileHandle *newFile = [fm createFileAtPath:path contents:[srcFile readDataToEndOfFile ] attributes:nil];
    [newFile closeFile];
    return true;
}

@end

 

转载于:https://www.cnblogs.com/fenglaijun/p/3903199.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值