在我们开发中过程中有时候会有这样的场景,需要脱离连线调试代码,但是又看不见控制台的Log,所以将Log存到文本中,调试过程全部记录下来,随时可以看。
存贮:
class func logWithTag(_ tag:String){
if logMode {
print(tag)
//将数据写入log中,
let dataLogPath = NSHomeDirectory() + "/Documents/logData.txt"
let fileM = FileManager()
if !fileM.fileExists(atPath: dataLogPath) {
try! ("" as NSString).write(toFile: dataLogPath, atomically: true, encoding: String.Encoding.utf8.rawValue)
}
let dataLog = try! NSMutableString(contentsOfFile: dataLogPath, encoding: String.Encoding.utf8.rawValue)
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let dateStr = formatter.string(from: Date())
let line = dateStr + " :" + tag + " \n"
dataLog.append(line)
try! dataLog.write(toFile: dataLogPath, atomically: true, encoding: String.Encoding.utf8.rawValue)
}
}
读取:
let dataLogPath = NSHomeDirectory() + "/Documents/logData.txt"
let fileM = FileManager()
if !fileM.fileExists(atPath: dataLogPath) {
try! ("" as NSString).write(toFile: dataLogPath, atomically: true, encoding: String.Encoding.utf8.rawValue)
}
let dataLog = try! NSMutableString(contentsOfFile: dataLogPath, encoding: String.Encoding.utf8.rawValue)
self.logTV.text = dataLog as String
下面是demo:Demo代码,原创请在github给个小星星,谢谢