2013-03-06 102 views

回答

0

所有的NSLog在系統日誌中Terminal.app自動打印。

如果你想直接看到在終端的結果,你需要 運行內置產品作爲終端的孩子,這意味着使用 像 /path/debug/build/MyProgram.app/Contents/MacOS/MyProgram啓動應用程序 。

From Here


編輯:

如果你想給的NSLog重定向到一個文件使用:

-(void) redirectNSLogToFile { 
    NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *filePath=[paths objectAtIndex:0]; 
    NSString *logPath=[filePath stringByAppendingPathComponent:@"LogFile.txt"]; 
    freopen([logpath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr); 
} 
+0

因此,我不必在xcdoe中使用輸出文件? – TWcode 2013-03-06 17:26:29

+0

xcode的輸出文件是什麼? – 2013-03-06 17:33:58

+0

我真正想要的是獲取應用程序輸出並將其導出到文本文件中。這是可能的還是我過度思考的事情? – TWcode 2013-03-06 17:34:31

0

當你在Xcode中運行你的應用程序的所有輸出在「所有輸出」窗格。如果你想保留,只需:選擇它,複製它,並將其粘貼到一個文件(使用TextEdit或其他)創建。

默認情況下,在Terminal.app中運行您的應用程序將不會保留輸出。您可以使用Unix管道/重定向將其存入文件中,例如:

$ /path/to/myapp > /path/to/LogFile.txt 
+0

我會在哪裏放這個重定向? – TWcode 2013-03-06 18:06:54

+0

上面是你將在Terminal.app中輸入的內容(這是實際在Terminal.app中運行的內容)。 – GoZoner 2013-03-06 18:49:04

+0

獲取此錯誤消息/path/to/LogFile.txt:沒有這樣的文件或目錄 – TWcode 2013-03-06 18:54:32