iOS 记录系统运行日志到指定文件目录
2016-01-08 16:30
525 查看
按照名称创建文件,如果文件存在,继续写在文件中,如果文件不存在,创建新的文件,实现记录自己需要记录的日志信息。
使用方法,在需要记录的地方,直接使用 write2Log方法即可,俩个参数(NSString )logmessg为消息内容,(NSString )logname为日志文件名称。
使用方法,在需要记录的地方,直接使用 write2Log方法即可,俩个参数(NSString )logmessg为消息内容,(NSString )logname为日志文件名称。
#import <Foundation/Foundation.h> #import "Comm.h" @interface WriteLog : NSObject { NSFileManager *fileMgr;} -(void)write2Log :(NSString *)logmessg :(NSString *)logname; @end
#import "WriteLog.h" @implementation WriteLog -(void)write2Log :(NSString *)logmessg :(NSString *)logname { fileMgr = [NSFileManager defaultManager]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd"]; // 设置格式为年-月-日 时:分:秒:毫秒 NSString *timeStr = [dateFormatter stringFromDate:[NSDate date]]; [dateFormatter setDateFormat:@"yyyy:MM:dd hh:mm:ss"]; // 设置格式为年-月-日 时:分:秒:毫秒 NSString *logtime = [dateFormatter stringFromDate:[NSDate date]]; NSArray *userPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *filePackageName = [userPaths objectAtIndex:0]; filePackageName = [NSString stringWithFormat:@"%@/%@%@",filePackageName,logPath,timeStr]; NSString* fileNamePackageRes=fileNamePackageRes = [[NSString alloc] initWithFormat:@"%@/%@.txt",filePackageName,logname]; NSString* strLogData = [[NSString alloc]initWithFormat:@"\n%@\n%@\n",logtime,logmessg]; if (![fileMgr fileExistsAtPath:filePackageName]) { [fileMgr createDirectoryAtPath:filePackageName withIntermediateDirectories:YES attributes:nil error:nil]; } else { NSFileHandle *outFile; NSData *buffer; outFile = [NSFileHandle fileHandleForWritingAtPath:fileNamePackageRes]; if(outFile == nil) { [strLogData writeToFile:fileNamePackageRes atomically:NO encoding:NSUTF8StringEncoding error:nil]; return; } //找到并定位到outFile的末尾位置(在此后追加文件) [outFile seekToEndOfFile]; //读取inFile并且将其内容写到outFile中 buffer = [strLogData dataUsingEncoding:NSUTF8StringEncoding]; [outFile writeData:buffer]; //关闭读写文件 [outFile closeFile]; } }
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 讲解iOS开发中基本的定位功能实现
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- 浅析iOS应用开发中线程间的通信与线程安全问题
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法
- 探讨Android与iOS,我们将何去何从?
- Android、iOS和Windows Phone中的推送技术详解
- IOS 改变键盘颜色代码
- 举例详解iOS开发过程中的沙盒机制与文件
- Android和IOS的浏览器中检测是否安装某个客户端的方法
- 分享一个iOS下实现基本绘画板功能的简单方法
- javascript实现阻止iOS APP中的链接打开Safari浏览器