文件句柄NSFileHandle

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #1e9421 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #3e1e81 }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #000000 }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; color: #1e9421 }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #000000; min-height: 21.0px }
span.s1 { }
span.s2 { font: 18.0px "PingFang SC" }
span.s3 { color: #000000 }
span.s4 { color: #6122ae }
span.s5 { color: #3e1e81 }
span.s6 { color: #c81b13 }
span.s7 { font: 18.0px Menlo; color: #000000 }
span.s8 { font: 18.0px Menlo }
span.s9 { color: #0435ff }
span.s10 { color: #703daa }

//一.读取

//1.以只读方式打开

NSFileHandle *fh = [NSFileHandle fileHandleForReadingAtPath:txtPath];

//2.读取所有内容

NSData *allData = [fh readDataToEndOfFile];

//转化str

NSString *str = [[NSString alloc]initWithData:allData encoding:NSUTF8StringEncoding];

NSLog(@"--%@",str );

//3.读取指定长度

//(注意:中文占3个字节)

//(注意:会接着上一次继续读取)

NSData *subData = [fh readDataOfLength:3];

NSString *str1 = [[NSString alloc]initWithData:subData encoding:NSUTF8StringEncoding];

NSLog(@"--%@--%ld",str1,str1.length);

//4.偏移(定位到某个字节,然后再读)

[fh seekToFileOffset:4];

NSData *offData = [fh readDataToEndOfFile];

NSString *str2 = [[NSString alloc]initWithData:offData encoding:NSUTF8StringEncoding];

NSLog(@"--%@--%ld",str2,str2.length);

//5.关闭文件

[fh closeFile];

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #1e9421 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #000000 }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #3e1e81 }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; color: #1e9421 }
span.s1 { }
span.s2 { font: 18.0px "PingFang SC" }
span.s3 { color: #1e9421 }
span.s4 { font: 18.0px "PingFang SC"; color: #1e9421 }
span.s5 { color: #000000 }
span.s6 { color: #6122ae }
span.s7 { font: 18.0px Menlo; color: #000000 }
span.s8 { font: 18.0px Menlo }
span.s9 { color: #c81b13 }
span.s10 { color: #3e1e81 }

//二.写入

//只写

NSFileHandle *fh = [NSFileHandle fileHandleForWritingAtPath:txtPath];

//读,写

//    NSFileHandle *fh1 = [NSFileHandle fileHandleForUpdatingAtPath:txtPath];

//1.设置偏移到最后

[fh seekToEndOfFile];

//.注意:如seek到某个字节:是覆盖后面内容,不是插入

//[fh seekToFileOffset:3];

//2.写入

NSData *data = [@"writeToText" dataUsingEncoding:NSUTF8StringEncoding];

[fh writeData:data];

时间: 2025-01-01 10:28:34

文件句柄NSFileHandle的相关文章

黑马程序员——Foundation——NSFileManager和NSFileHandle

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- //NSFileManager#import <Foundation/Foundation.h> #define PATH @"/Users/fengze/Desktop" int main(int argc, const char * argv[]) { @autoreleasepool { //创建 file manager对象 NSFileManager *fm =

IOS之NSFileManager 和NSFileHandle

在现阶手机app的临时缓存文件渐渐增多,在app开发中对于移动设备文件的操作越来越多,我们IOS中对于文件的操作主要涉及两个类NSFileManager 和NSFileHandle,下面我们就看看如何使用这两个类: 1.文件创建 //初始化一个NSFileManager类defaultManager方法为单例模式,通过单例模式进行初始化 NSFileManager * fileManager =[NSFileManager defaultManager]; //拼接路径 NSString * p

黑马程序员___Foundation__NSFileManager和NSFileHandle

//NSFileManager#import <Foundation/Foundation.h> #define PATH @"/Users/fengze/Desktop" int main(int argc, const char * argv[]) { @autoreleasepool { //创建 file manager对象 NSFileManager *fm = [NSFileManager defaultManager]; //查看指定文件路径并返回一个数组,数

OC10_文件练习

// // TextHander.h // OC10_文件练习 // // Created by zhangxueming on 15/6/19. // Copyright (c) 2015年 zhangxueming. All rights reserved. // #import <Foundation/Foundation.h> @interface TextHander : NSObject + (void)replaceStringInTextFile:(NSString *)pat

iOS网络-文件下载,断点下载,输出流下载

小文件下载 NSURLConnection-delegate实现,可以监听到下载的进度,但是还是无法解决内存飙升的问题,所以仅限小文件下载 1 @interface ViewController ()<NSURLConnectionDataDelegate> 2 @property (weak, nonatomic) IBOutlet UIProgressView *progressView; 3 /** 接收数据的data */ 4 @property (nonatomic, strong)

文件内容操作NSHandle

//2对文件内容的操作 NSHandle 文件内容为:hello world! //NSHandle 文件句柄 //创建文件句柄 //以只读的方式打开指定位置的文件,生成文件句柄 NSFileHandle *fh=[NSFileHandle fileHandleForReadingAtPath:文件路径名]; //读指定的字节数到NSData NSData *data=[fh readDataOfLength:3]; //转换成字符串输出 NSString *str=[[NSString all

OC9_文件操作

// // main.m // OC9_文件操作 // // Created by zhangxueming on 15/6/19. // Copyright (c) 2015年 zhangxueming. All rights reserved. // #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //文件句柄 //以只读的方式创建文件句柄 //+

iOS-网络编程(二)文件上传和断点离线下载

一. iOS中发送HTTP请求的方案 在iOS中,我们常用发送HTTP请求的方案有苹果原生(自带)NSURLConnection:用法简单,最古老最经典最直接的一种方案 (iOS 9.0弃用)NSURLSession:功能比NSURLConnection更加强大,苹果目前比较推荐使用这种技术第三方框架AFNetworking:简单易用,提供了基本够用的常用功能,维护和使用者多 二. NSURLConnection (已弃用) 虽然NSURLConnection已经被弃用,但是我们还是要了解NSU

文件操作-FileHandle

1.使用文件句柄(FileHandle)的对象可以对文件的内容进行操作 2.文件的写操作 2.1.将新加的字符在文件的前面添加,而不清空文件内容,只是替换从文件开头的文字 NSFileHandle *fhw = [NSFileHandle fileHandleForWritingAtPath:[NSString stringWithFormat:@"%@/dir/testFile",PATH]]; [fhw writeData:[@"haha" dataUsingE