文件操作
来源:互联网 发布:网络搜索推广 编辑:程序博客网 时间:2024/05/16 16:10
#import <Foundation/Foundation.h>
#define PATH @"/Users/student/Andrew/XCODE_OC/week2/1.txt"
int main(int argc,const char * argv[])
{
@autoreleasepool {
/***************************/
/* OC -week2-day4 */
/* =================== */
/* 文件操作 */
/* =================== */
/***************************/
//文件操作,分为对文件本身操作和文件内容的操作。
/***************************/
/* NSFileManager */
/* --------------------- */
/* 对文件本身进行操作 */
/* --------------------- */
/***************************/
// NSError *error=nil;//装错误信息的指针
//
// NSFileManager *manager=[NSFileManager defaultManager];
//
// /*********************/
// /* 查看一个目录下得内容
// /*********************/
// //【浅度遍历】查看
// NSArray *array=[manager contentsOfDirectoryAtPath:PATH error:&error];//当出现错误时,系统会动将错误信息装入到error指针中,即错误信息,不是程序员来编写的。
//
// if (error) {
// //发生错误
// NSLog(@"%@",error);
// }else
// {
// for (NSString* str in array) {
// NSLog(@"%@",str);
// }
//
// }
//
// //【深度遍历】查看
// NSError *error1=nil;//装错误信息的指针
// NSArray *array1=[manager subpathsOfDirectoryAtPath:PATH error:&error1];
// if (error1) {
// //发生错误
// NSLog(@"%@",error1);
// }else
// {
// for (NSString* str in array1) {
// NSLog(@"%@",str);
// }
//
// }
//
// /*********************/
// /* 创建目录
// /*********************/
//
// NSError *error2=nil;//装错误信息的指针
//
// [manager createDirectoryAtPath:[PATH stringByAppendingPathComponent:@"测试文件创建目录"] withIntermediateDirectories:YES attributes:nil error:&error2];
// //第一个参数是路径
// //第二个参数表示是否携带中间目录,YES,缺少中间目录会自动创建,NO,缺少中间目录会创建失败。
// //第三个参数是文件的属性,默认填写nil
// //第四个参数是存储错误信息的指针地址
//
//
//
// if (error2) {
// //发生错误
// NSLog(@"%@",error2);
// }else
// {
// NSLog(@"创建目录成功");
// }
//
//
// /*********************/
// /* 创建文件
// /*********************/
//
//
// //任何数据都能转成NSData
// NSData *data=[@"阳光明媚" dataUsingEncoding:NSUTF8StringEncoding];
//
// BOOL flag=[manager createFileAtPath:[PATH stringByAppendingPathComponent:@"测试文件创建目录1"] contents:data attributes:nil];
//
// //注意 第一个参数需要 指明文件路径和文件名
//
// if (flag) {
// NSLog(@"创建文件成功!");
// }
// else
// {
// NSLog(@"创建文件失败");
// }
//
//
// /*********************/
// /* 删除文件(目录)
// /*********************/
//
///*
// NSError *error5=nil;
//
// [manager removeItemAtPath:[PATH stringByAppendingPathComponent:@"测试文件创建目录"] error:&error5];
//
// if (error5) {
// //发生错误
// NSLog(@"%@",error5);
// }else
// {
// NSLog(@"删除文件成功");
// }
//
//*/
//
// /*********************/
// /* 拷贝文件(目录)-- 复制
// /*********************/
//
// /*
//
// 注意!!!
//
// 移动,拷贝的目标路径一定要指明移动或拷贝后的的文件名
//
// 例如:文件源路径 /user/student/And/1.txt
// 文件指定路径 /user/student/And/TXT/"1.txt" 一定要指明文件(文件夹)的名字,
//
// */
//
// NSError *error6=nil;
// [manager copyItemAtPath:[PATH stringByAppendingPathComponent:@"测试文件创建目录1"] toPath:[PATH stringByAppendingPathComponent:@"测试文件创建目录2"] error:&error6];
//
// if (error6) {
// //发生错误
// NSLog(@"%@",error6);
// }else
// {
// NSLog(@"拷贝文件成功");
// }
//
//
// /*
//
// 剩下还有其他的对文件本身操作的方法,可以查询文件操作的API文档
//
// */
//
//
/***************************/
/* NSFileHandle */
/* --------------------- */
/* 对文件里内容进行操作 */
/* --------------------- */
/***************************/
//打开文件,生成只读的文件句柄
NSFileHandle *fh=[NSFileHandlefileHandleForReadingAtPath:PATH];//只读方式打开已经存在的文件,文件定位到起始位置)
/*
+ fileHandleForWritingAtPath: (只写方式打开已经存在的文件,文件定位到起始位置)
+ fileHandleForUpdatingAtPath:(读写方式打开已经存在的文件,文件定位到起始位置)
*/
//句柄fh就是文件(硬盘)在内存中的体现(或者叫代表),对句柄进行操作,就是对硬盘中的文件进行操作
//读取文件
//01 一读到低
// NSData *data=[fh readDataToEndOfFile];
//读取指定字节数
NSData *data1=[fh readDataOfLength:13];
//转换为nsstring
NSString *str=[[NSStringalloc] initWithData:data1encoding:NSUTF8StringEncoding];
NSLog(@"%@",str);
[strrelease];
}
return 0;
}
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 文件操作
- 【交互设计】如何设计“取消”按钮
- CountDownLatch 多线程协同操作
- Trees on the level
- ios获取手机用户是否开启关闭静音
- Python脚本之批量实现文件内容追加
- 文件操作
- sql基础
- sscanf()的用法和例子
- 11.11 将搜索框的汉字转化为无音调拼音
- 第十一周总结
- 最短路径算法——Dijkstra,Bellman-Ford,Floyd-Warshall,Johnson
- 2015校招经典算法笔试题
- smb
- 【DP】 POJ 1160 Post Office