iOS - 将Xcode控制台Log日志转为文本文件

1.在AppDelegate.m中创建函数实现以下代码块:

 #pragma mark - 自定义方法,将nslog的输出信息写入到dr.log文件中
 - (void)nslogToFile
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentDirectory = [paths objectAtIndex:0];
NSString *fileName = [NSString stringWithFormat:@"NSLog.txt"];// 注意不是NSData!

NSString *logFilePath = [documentDirectory stringByAppendingPathComponent:fileName];
// 先删除已经存在的文件
NSFileManager *defaultManager = [NSFileManager defaultManager];
[defaultManager removeItemAtPath:logFilePath error:nil];

// 将log输入到文件
freopen([logFilePath cStringUsingEncoding:NSASCIIStringEncoding], "a+", stdout);

freopen([logFilePath cStringUsingEncoding:NSASCIIStringEncoding], "a+", stderr);

}

2.然后在didFinishLaunchingWithOptions方法里面调用

- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
     [self  nslogToFile];
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,795评论 8 265
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,174评论 1 32
  • 1.在AppDelegate.m中创建函数实现以下代码块: -(void)redirectNSlogToDocum...
    Johnny_Chang阅读 1,384评论 0 0
  • 一只狗是我微信的名字,这个名字确实蛮滑稽的。但确是我用过这么多的昵称名字里边最喜欢的,可以说除了QQ昵称之外最喜欢...
    Ehnap阅读 244评论 0 1
  • 最近一直给孩子讲雷锋的故事和雷锋精神,鼓励他像雷锋一样去帮助别人。 那天,他独自出去玩,在大衔上一群孩子疯狂...
    金宝凝香阅读 224评论 0 0