文件操作(复制、删除、修改)
2014-07-30 15:39
309 查看
//写数据到文件
void writeData()
{
NSString *path = @"/Users/administrator/Desktop/ycw.txt";
NSString *temp = @"my name is yangchengwei";
int i = 100;
float f = 78.98;
NSMutableData *write = [[NSMutableData alloc]init];
[write appendData:[temp dataUsingEncoding:NSUTF8StringEncoding]];
[write appendBytes:&i length:sizeof(i)];
[write appendBytes:&f length:sizeof(f)];
[write writeToFile:path atomically:YES];
}
//从文件读取数据到NSData
void readData()
{
NSString *path = @"/Users/administrator/Desktop/ycw.txt";
NSString *temp;
int i;
float f;
NSData *read = [NSData dataWithContentsOfFile:path];
temp = [[NSString alloc]initWithData:[read subdataWithRange:NSMakeRange(0, 23)] encoding:NSUTF8StringEncoding];
[read getBytes:&i range:NSMakeRange([temp length], sizeof(i))];
[read getBytes:&f range:NSMakeRange([temp length]+sizeof(i), sizeof(f))];
NSLog(@"string is %@ int is %d float is %f",temp,i,f);
}
void readFile(){
NSFileManager *manager = [NSFileManager defaultManager];
NSString *path = @"/Users/administrator/Desktop/1.txt";
if ([manager fileExistsAtPath:path]) {
NSString *content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",content);
}
}
void fileBasic(){
NSFileManager *manager;
//获取manager对象,单例模式,Returns the default singleton instance.
manager = [NSFileManager defaultManager];
NSString *path = @"/Users/administrator/Desktop/1.txt";
NSString *path2 = @"/Users/administrator/Desktop/2.txt";
if ([manager fileExistsAtPath:path]) {
NSLog(@"已存在");
NSError *error;
[manager copyItemAtPath:path toPath:path2 error:&error];
}
else{
NSString *content = @"苹果iOS是由苹果公司开发的手持设备操作系统。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%.";
NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];
BOOL result = [manager createFileAtPath:path contents:data attributes:nil];
if (result) {
NSError *error;
[manager copyItemAtPath:path toPath:path2 error:&error];
}
}
}
void fileOperator()
{
NSFileManager *manager = [NSFileManager defaultManager];
NSString *f1 = @"/Users/administrator/Desktop/1.txt";
NSString *f2 = @"/Users/administrator/Desktop/2.txt";
NSString *content = @"苹果iOS是由苹果公司开发的手持设备操作系统。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%.";
//字符串转换成NSData
NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];
Boolean status = NO;
//判断f1是否存在
if ([manager fileExistsAtPath:f1]) {
[manager removeItemAtPath:f1 error:nil];
}
//创建文件,并添加内容
status = [manager createFileAtPath:f1 contents:data attributes:nil];
if (status) {
NSLog(@"%@",[NSString stringWithContentsOfFile:f1 encoding:NSUTF8StringEncoding error:nil]);
}
if (![manager fileExistsAtPath:f2]) {
[manager copyItemAtPath:f1 toPath:f2 error:nil];
}
}
void directoryOperator()
{
NSString *dirName = @"testDir";
NSString *path;
NSFileManager *fm;
fm = [NSFileManager defaultManager];
//获得当前目录
path = [fm currentDirectoryPath];
NSLog(@"currentDirectoryPath:%@",path);
//创建新的目录
if ([fm createDirectoryAtPath:dirName withIntermediateDirectories:YES attributes:nil error:nil]) {
NSLog(@"create directory succeed!");
}
//重命名新的目录
if ([fm moveItemAtPath:dirName toPath:@"newDir" error:nil]) {
NSLog(@"move directory succeed!");
}
if ([fm changeCurrentDirectoryPath:@"newDir"]) {
NSLog(@"change currentDirectory succeed!");
}
//重新获得当前目录
path = [fm currentDirectoryPath];
NSLog(@"currentDirectoryPath:%@",path);
}
void enumDictory1()
{
//深度遍历
NSFileManager *manager = [NSFileManager defaultManager];
NSDirectoryEnumerator *dir = [manager enumeratorAtPath:@"/users/fmning/desktop/"];
NSString *path = [dir nextObject];
while (path != nil) {
NSLog(@"%@",path);
path = [dir nextObject];
}
}
void enumDictory2()
{
//浅度遍历
NSFileManager *manager = [NSFileManager defaultManager];
NSArray *array = [manager contentsOfDirectoryAtPath:@"/users/fmning/desktop" error:nil];
for (NSString *str in array) {
NSLog(@"%@",str);
}
}
void fileHandle()
{
NSFileHandle *fh;
NSString *path = @"/users/fmning/desktop/1.txt";
fh = [NSFileHandle fileHandleForUpdatingAtPath:path];
if (fh != nil) {
[fh seekToEndOfFile];
NSString *appendStr = @"我是追加的一段文字@";
[fh writeData:[appendStr dataUsingEncoding:NSUTF8StringEncoding]];
[fh closeFile];
}
}
//把infile文件中的内容拷贝到outfile中
void fileHandle2()
{
NSFileHandle *infile,*outfile;
NSData *buffer;
infile = [NSFileHandle fileHandleForReadingAtPath:@"/users/fmning/desktop/1.txt"];
outfile = [NSFileHandle fileHandleForWritingAtPath:@"/users/fmning/desktop/2.txt"];
if (!infile || !outfile) {
return;
}
//可删除outfile以前的内容
[outfile truncateFileAtOffset:0];
//读取infile文件内容到缓冲区
buffer = [infile readDataToEndOfFile];
//将缓冲区中的数据写入到outfile中
[outfile writeData:buffer];
//关闭两个文件
[infile closeFile];
[outfile closeFile];
}
void nsURLTest()
{
NSURL *myurl = [NSURL URLWithString:@"http://www.baidu.com"];
NSString *page = [NSString stringWithContentsOfURL:myurl encoding:NSASCIIStringEncoding error:nil];
NSLog(@"%@",page);
}
void bundleTest()
{
NSString *filePath = [[NSBundle mainBundle]pathForResource:@"person" ofType:@"plist"];
}
void writeData()
{
NSString *path = @"/Users/administrator/Desktop/ycw.txt";
NSString *temp = @"my name is yangchengwei";
int i = 100;
float f = 78.98;
NSMutableData *write = [[NSMutableData alloc]init];
[write appendData:[temp dataUsingEncoding:NSUTF8StringEncoding]];
[write appendBytes:&i length:sizeof(i)];
[write appendBytes:&f length:sizeof(f)];
[write writeToFile:path atomically:YES];
}
//从文件读取数据到NSData
void readData()
{
NSString *path = @"/Users/administrator/Desktop/ycw.txt";
NSString *temp;
int i;
float f;
NSData *read = [NSData dataWithContentsOfFile:path];
temp = [[NSString alloc]initWithData:[read subdataWithRange:NSMakeRange(0, 23)] encoding:NSUTF8StringEncoding];
[read getBytes:&i range:NSMakeRange([temp length], sizeof(i))];
[read getBytes:&f range:NSMakeRange([temp length]+sizeof(i), sizeof(f))];
NSLog(@"string is %@ int is %d float is %f",temp,i,f);
}
void readFile(){
NSFileManager *manager = [NSFileManager defaultManager];
NSString *path = @"/Users/administrator/Desktop/1.txt";
if ([manager fileExistsAtPath:path]) {
NSString *content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",content);
}
}
void fileBasic(){
NSFileManager *manager;
//获取manager对象,单例模式,Returns the default singleton instance.
manager = [NSFileManager defaultManager];
NSString *path = @"/Users/administrator/Desktop/1.txt";
NSString *path2 = @"/Users/administrator/Desktop/2.txt";
if ([manager fileExistsAtPath:path]) {
NSLog(@"已存在");
NSError *error;
[manager copyItemAtPath:path toPath:path2 error:&error];
}
else{
NSString *content = @"苹果iOS是由苹果公司开发的手持设备操作系统。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%.";
NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];
BOOL result = [manager createFileAtPath:path contents:data attributes:nil];
if (result) {
NSError *error;
[manager copyItemAtPath:path toPath:path2 error:&error];
}
}
}
void fileOperator()
{
NSFileManager *manager = [NSFileManager defaultManager];
NSString *f1 = @"/Users/administrator/Desktop/1.txt";
NSString *f2 = @"/Users/administrator/Desktop/2.txt";
NSString *content = @"苹果iOS是由苹果公司开发的手持设备操作系统。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%.";
//字符串转换成NSData
NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];
Boolean status = NO;
//判断f1是否存在
if ([manager fileExistsAtPath:f1]) {
[manager removeItemAtPath:f1 error:nil];
}
//创建文件,并添加内容
status = [manager createFileAtPath:f1 contents:data attributes:nil];
if (status) {
NSLog(@"%@",[NSString stringWithContentsOfFile:f1 encoding:NSUTF8StringEncoding error:nil]);
}
if (![manager fileExistsAtPath:f2]) {
[manager copyItemAtPath:f1 toPath:f2 error:nil];
}
}
void directoryOperator()
{
NSString *dirName = @"testDir";
NSString *path;
NSFileManager *fm;
fm = [NSFileManager defaultManager];
//获得当前目录
path = [fm currentDirectoryPath];
NSLog(@"currentDirectoryPath:%@",path);
//创建新的目录
if ([fm createDirectoryAtPath:dirName withIntermediateDirectories:YES attributes:nil error:nil]) {
NSLog(@"create directory succeed!");
}
//重命名新的目录
if ([fm moveItemAtPath:dirName toPath:@"newDir" error:nil]) {
NSLog(@"move directory succeed!");
}
if ([fm changeCurrentDirectoryPath:@"newDir"]) {
NSLog(@"change currentDirectory succeed!");
}
//重新获得当前目录
path = [fm currentDirectoryPath];
NSLog(@"currentDirectoryPath:%@",path);
}
void enumDictory1()
{
//深度遍历
NSFileManager *manager = [NSFileManager defaultManager];
NSDirectoryEnumerator *dir = [manager enumeratorAtPath:@"/users/fmning/desktop/"];
NSString *path = [dir nextObject];
while (path != nil) {
NSLog(@"%@",path);
path = [dir nextObject];
}
}
void enumDictory2()
{
//浅度遍历
NSFileManager *manager = [NSFileManager defaultManager];
NSArray *array = [manager contentsOfDirectoryAtPath:@"/users/fmning/desktop" error:nil];
for (NSString *str in array) {
NSLog(@"%@",str);
}
}
void fileHandle()
{
NSFileHandle *fh;
NSString *path = @"/users/fmning/desktop/1.txt";
fh = [NSFileHandle fileHandleForUpdatingAtPath:path];
if (fh != nil) {
[fh seekToEndOfFile];
NSString *appendStr = @"我是追加的一段文字@";
[fh writeData:[appendStr dataUsingEncoding:NSUTF8StringEncoding]];
[fh closeFile];
}
}
//把infile文件中的内容拷贝到outfile中
void fileHandle2()
{
NSFileHandle *infile,*outfile;
NSData *buffer;
infile = [NSFileHandle fileHandleForReadingAtPath:@"/users/fmning/desktop/1.txt"];
outfile = [NSFileHandle fileHandleForWritingAtPath:@"/users/fmning/desktop/2.txt"];
if (!infile || !outfile) {
return;
}
//可删除outfile以前的内容
[outfile truncateFileAtOffset:0];
//读取infile文件内容到缓冲区
buffer = [infile readDataToEndOfFile];
//将缓冲区中的数据写入到outfile中
[outfile writeData:buffer];
//关闭两个文件
[infile closeFile];
[outfile closeFile];
}
void nsURLTest()
{
NSURL *myurl = [NSURL URLWithString:@"http://www.baidu.com"];
NSString *page = [NSString stringWithContentsOfURL:myurl encoding:NSASCIIStringEncoding error:nil];
NSLog(@"%@",page);
}
void bundleTest()
{
NSString *filePath = [[NSBundle mainBundle]pathForResource:@"person" ofType:@"plist"];
}
相关文章推荐
- 如何用服务器文件管理系统记录共享文件的访问日志、记录共享文件复制、修改、删除和剪切等操作?
- Java Io文件操作(读写、追加、删除、移动、复制、修改)
- C#文件操作源码 递归复制一个目录 递归删除文件 和 文件夹
- JAVA 如何创建/删除/修改/复制目录及文件
- Java实现文件的读取、写入、复制、修改、移动等操作
- java 的 文件、文件夹 的建立、删除、复制以及移动等功能 操作
- SqlHelper改的OleDbHelper,OleDbHelper新增、修改、删除(操作二进制文件)
- asp.net中对文件的创建,移动,复制,及删除操作
- 对config文件中的配置进行新增修改删除读取操作
- DELPHI通过ACTIVESYNC连接到移动设备,并进行文件的复制,删除等操作!
- C#文件操作源码 递归复制一个目录 递归删除文件 和 文件夹
- JAVA 如何创建/删除/修改/复制目录及文件
- Javascript----文件操作(删除/复制/剪贴...)
- XML文件操作(查询,添加,修改,删除 结点)
- 监视资源管理器的文件复制/删除/移动操作,不要太过寄望于Hook SHFileOperation
- 关于C#和ASP.NET中对App.config和Web.config文件里的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作
- XML文件操作(查询,添加,修改,删除 结点)
- JAVA 如何创建\删除\修改\复制目录及文件
- JAVA 如何创建/删除/修改/复制目录及文件
- JAVA 如何创建/删除/修改/复制目录及文件