iOS 文件以及文件夹相关操作
来源:互联网 发布:北京世纪中彩网络诈骗 编辑:程序博客网 时间:2024/05/16 20:56
文件相关操作
/**
* 返回解压成功或失败.需要使用到ZipArchive
* srcfile:待解压文件全路径 destfile:解压文件全路径.
**/
+(BOOL)UnZipFile:(NSString*)srcFile ToFile:(NSString *)destFile withdeleteflag:(BOOL) bDel
{
BOOL bUnZip =false;
ZipArchive *zip = [[ZipArchivealloc]init];
NSString *sZipPath = srcFile;
NSString *unZipTo = destFile;
if ([zipUnzipOpenFile:sZipPath])
{
[zipUnzipFileTo:unZipTooverWrite:YES];
[zipUnzipCloseFile];
bUnZip=YES;
}
[ziprelease];
if (bDel) {
[selfdeleteFile:sZipPath];
}
return bUnZip;
}
/**
* 判断文件夹是否存在,不存在则创建对应文件夹.
* strDir:文件夹全路径.
**/
+(void)IfNotCreateDir:(NSString*)strDir
{
NSFileManager *fileManager = [NSFileManagerdefaultManager];
BOOL isDir =FALSE;
BOOL isDirExist = [fileManagerfileExistsAtPath:strDir isDirectory:&isDir];
if(!(isDirExist && isDir))
{
BOOL bCreateDir = [fileManagercreateDirectoryAtPath:strDirwithIntermediateDirectories:YESattributes:nilerror:nil];
if(!bCreateDir){
NSLog(@"Create Directory Failed.");
}
NSLog(@"%@",strDir);
}
}
/**
* 删除文件.
* strDir:文件全路径.
**/
+(void)deleteFile:(NSString*)strDir
{
NSFileManager *fileManager = [NSFileManagerdefaultManager];
if (![fileManagerremoveItemAtPath:strDir error:nil]) {
NSLog(@"remove file error.");
}
else
{
NSLog(@"remove file success.");
}
}
/**
* 复制文件.
* srcFile:原文件全路径.destFile:目标文件全路径
**/
+(BOOL)CopyFile:(NSString *)srcFile ToFile:(NSString *)destFile
{
NSError *error=nil;
BOOL success = [[NSFileManagerdefaultManager]copyItemAtPath:srcFiletoPath:destFileerror:&error];
if (!success){
NSAssert1(0,@"Failed to copy file '%@'.", [errorlocalizedDescription]);
return FALSE;
}
else
{
returnTRUE;
}
}
/**
* 判断文件是否存在,不存在则创建.
* strFile:文件全路径.
**/
+(BOOL)CreateFileIfNotExist:(NSString *)strFile
{
//创建文件管理器
NSFileManager *fileManager = [NSFileManagerdefaultManager];
//查找文件,如果不存在,就创建一个文件
if (![fileManagerfileExistsAtPath:strFile]) {
return [fileManagercreateFileAtPath:strFile contents:nilattributes:nil];
}
return true;
}
/**
* 读取文本文件的每行,写入nsarray.
* strFile:文件全路径.
**/
+(NSArray*)readTxtLines:(NSString *)strFile
{
NSArray *lines;/*将文件转化为一行一行的*/
NSLog(@"content:%@",[NSStringstringWithContentsOfFile:strFileencoding:NSUTF8StringEncodingerror:nil]);
lines = [[NSStringstringWithContentsOfFile:strFileencoding:NSUTF8StringEncodingerror:nil]componentsSeparatedByString:@"\n"];
return lines;
}
/**
* 读取文本文件的每行中制定字符类间的数据.
* strFile:文件全路径.strPreFlag:前分割字符,如“<";strBackFlag:前分割字符,如“>";
**/
+(NSArray*)readTxtLines:(NSString *)strFile withPreFlag:(NSString *)strPreFlag AndBackFlag:(NSString *)strBackFlag
{
NSString *tmp;
NSArray *lines;/*将文件转化为一行一行的*/
lines = [[NSStringstringWithContentsOfFile:strFileencoding:NSUTF8StringEncodingerror:nil]componentsSeparatedByString:@"\n"];
NSEnumerator *nse = [linesobjectEnumerator];
// 读取如<>里的内容
NSMutableArray *arr = [[[NSMutableArrayalloc]init] autorelease];
while(tmp = [nsenextObject]) {
if (tmp !=nil || ![tmpisEqualToString:@""]) {
NSString *stringBetweenBrackets =nil;
NSScanner *scanner = [NSScannerscannerWithString:tmp];
[scannerscanUpToString:strPreFlagintoString:nil];
[scannerscanString:strPreFlagintoString:nil];
[scannerscanUpToString:strBackFlagintoString:&stringBetweenBrackets];
if (stringBetweenBrackets !=nil) {
[arraddObject:stringBetweenBrackets];
}
}
}
return arr;
}
/**
* 判断文件是否可读.
* strFile:文件全路径;
**/
+(BOOL)IsFileCanRead:(NSString *)strFile
{
return [[NSFileManagerdefaultManager]isReadableFileAtPath:strFile];
}
/**
* 判断文件是否可写.
* strFile:文件全路径;
**/
+(BOOL)IsFileCanWrite:(NSString *)strFile
{
return [[NSFileManagerdefaultManager]isWritableFileAtPath:strFile];
}
/**
* 判断文件是否相同.
*
**/
+(BOOL)IsFile:(NSString *)strSrcFILE equaltofile:(NSString *)strDestFile
{
return [[NSFileManagerdefaultManager]contentsEqualAtPath:strSrcFILEandPath:strDestFile];
}
/**
* 修改文件名.
*
**/
+(BOOL)reNameFile:(NSString *)strOldFile toFile:(NSString *)strNewFile
{
//将文件 newfile.txt重命名为 newfile2.txt
return [[NSFileManagerdefaultManager]moveItemAtPath:strOldFiletoPath:strNewFileerror:nil];
}
- iOS 文件以及文件夹相关操作
- Android 初始文件夹创建 以及 文件&文件夹相关操作
- windows客户端开发--文件以及文件夹相关操作(windows api)
- dirent--文件以及文件夹相关操作(跨平台)
- windows客户端开发--文件以及文件夹相关操作(windows api)
- 文件和文件夹相关操作
- C#操作文件以及文件夹
- iOS 文件相关操作
- 关于文件及文件夹的相关操作
- [Python]文件及文件夹相关操作
- MFC 文件与文件夹相关操作
- 文件及文件夹的相关操作
- python与文件文件夹相关操作
- MFC 中打开 文件,文件夹,以及删除文件,文件夹操作
- 文件以及文件夹的操作类
- Python 对文件夹以及文件的操作
- 沙盒、文件以及文件夹的操作
- 沙盒文件以及文件夹操作
- android charts -- 开源android绘图软件
- 移动终端开发必备知识
- 遇到 oracle11g failed login delay
- (编程基础)void main的误用
- 英语电子词典
- iOS 文件以及文件夹相关操作
- ASP.NET MVC4 IN ACTION学习笔记-第三波
- MyEclipse中配置struts.xml自动提示
- 带名字的学生成绩单
- Linux 命令行技巧
- linux sqlite3 arm平台移植
- 利用eclipse构建和部署maven工程
- 曲子龙:我从冈本谈安全!
- 我最喜爱的工具-oh-my-zsh