【发布时间】:2017-07-18 10:57:30
【问题描述】:
我想在 Swift 3.0 中将每个 print() 内容写入一个文本文件。 它在 Objective-C 中运行良好,但在 Swift 3.0 中无法运行。 我正在使用如下代码,
func redirectLogToDocuments() {
let docDirectory: NSString = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)[0] as NSString
let logpath = docDirectory.appendingPathComponent("Logfile.txt")
freopen(logpath.cString(using: String.Encoding.utf8)!, "a+", stdin)
freopen(logpath.cString(using: String.Encoding.utf8)!, "a+", stdout)
freopen(logpath.cString(using: String.Encoding.utf8)!, "a+", stderr)
}
请帮帮我。
【问题讨论】:
-
对我有用(但比较 stackoverflow.com/a/41680336/1187415)。 – 具体问题是什么?你真的想将 stdin 重定向到/来自同一个文件吗?