• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Objective-c:NSFileHandle类,创建流对象,对文件进行写入、读取的操作 ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
NSFileHandle类:它需要配合NSFileManager文件管理类,对文件内容进行操作,写入数据、读取数据。
使用步骤:
    1、打开文件获取NSFileHandle类的对象
    2、进行文件的I/O操作
    3、关闭文件
 1 //
 2 //  main.m
 3 //  02-NsFileHandle
 4 //
 5 //  Created by ma c on 15/8/24.
 6 //  Copyright (c) 2015年 bjsxt. All rights reserved.
 7 //
 8 
 9 #import <Foundation/Foundation.h>
10 
11 int main(int argc, const char * argv[])
12 {
13     @autoreleasepool
14     {
15         //NSFileHandle文件
16         //1.创建文件
17         NSString *str = @"this is a test.";
18         NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
19         NSFileManager *fm = [NSFileManager defaultManager];
20         if([fm createFileAtPath:@"1.txt" contents:data attributes:nil])
21         {
22             NSLog(@"文件创建成功");
23             //2.创建NSFileHandle对象
24             NSFileHandle *infh = [NSFileHandle fileHandleForReadingAtPath:@"1.txt"];
25             if(infh)
26             {
27                 //3.读文件内容
28                 //3.1读文件的全部内容
29                 //NSData *contents = [fh readDataToEndOfFile];
30                 //3.2读文件的部分内容
31                 NSMutableData *allData = [NSMutableData data];
32                 NSData *contents;
33                 while(1)
34                 {
35                     contents = [infh readDataOfLength:4];
36                     //判断是否读到文件尾
37                     if(!contents || [contents length] <= 0)
38                     {
39                         break;
40                     }
41                     [allData appendData:contents];
42                 }
43                 NSString *strContents = [[NSString alloc]initWithData:allData encoding:NSUTF8StringEncoding];
44                 NSLog(@"%@",strContents);
45             }
46             //4.关闭文件
47             [infh closeFile];
48         }
49         else
50         {
51             NSLog(@"文件创建失败");
52         }
53         
54         //5.写文件的例子
55         [fm createFileAtPath:@"2.txt" contents:nil attributes:nil];
56         //写文件时只能写已经存在的文件,自己不主动创建文件
57         NSFileHandle *outfh = [NSFileHandle fileHandleForWritingAtPath:@"2.txt"];
58         if(outfh)
59         {
60             NSData *data = [@"hello world" dataUsingEncoding:NSUTF8StringEncoding];
61             //写文件
62             [outfh writeData:data];
63         }
64         [outfh closeFile];
65     }
66     return 0;
67 }

 

 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Objective C - 2 - 随机数,可变字符串,字符串,SubString发布时间:2022-07-12
下一篇:
Objective-C之多语言的预编译头发布时间:2022-07-12
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap