Swift - 实现日志输出的封装1(显示出调用的文件名、方法、行号)

82 篇文章 1 订阅
在开发调试程序时,我们少不了使用  print 方法进行日志打印。当然简单地调试使用  print 方法就够了,但如果日志输出的地方很多,就不好区分出每条日志具体是在哪里打印的。
本文对日志打印功能做个封装,自动实现日志信息的格式化。

1,效果图

从下图可以看出,控制台除了输出我们指定的日志内容外,还会自动记录日志触发点的文件名、函数名、行号。
原文:Swift - 实现日志输出的封装1(显示出调用的文件名、方法、行号)

2,日志封装代码

由于  Swift 支持全局函数,全局函数可以在当前所在的命名空间下随意调用。所以我们只需要定义一个全局函数即可。
1
2
3
4
5
6
7
8
9
10
//封装的日志输出功能(T表示不指定日志信息参数类型)
func  HGLog < T >(_ message: T , file: String  = #file, function: String  = #function,
            line: Int  = #line) {
     # if  DEBUG
         //获取文件名
         let  fileName = (file  as  NSString ).lastPathComponent
         //打印日志内容
         print ( "\(fileName):\(line) \(function) | \(message)" )
     #endif
}

3,使用样例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import  UIKit
 
class  ViewController UIViewController  {
 
     override  func  viewDidLoad() {
         super .viewDidLoad()
         
         HGLog ( "程序启动!" )
         doSomething()
     }
     
     func  doSomething() {
         HGLog ( "欢迎访问hangge.com" )
     }
 
     override  func  didReceiveMemoryWarning() {
         super .didReceiveMemoryWarning()
     }
}

原文出自: www.hangge.com   转载请保留原文链接: http://www.hangge.com/blog/cache/detail_1417.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值