2012-01-29 2 views
0

다른 클래스와 메소드로 구성된 프로그램이 있습니다. 내 프로그램의 어떤 부분에서 나는 내 코드의 진행 상황을 보여주는 많은 NSLog을 넣었다.NSLOG가 프로그램에서 MultiLIne Label에 인쇄하는 모든 것에 답변하는 방법은 무엇입니까?

이 내용을 제 코코아 프로그램에 표시하고 싶습니다. 사실 XCODE의 Console과 같은 것을 쓰면, NSLog에서 나오는 모든 것을 보여주고 싶습니다.

내 코코아 프로그램에서 어떻게 구현할 수 있습니까?

+0

NSLog()를 수행하면 Xcode의 출력에 표시됩니다. 당신이 찾고있는 것을 분명히 할 수 있습니까? – bryanmac

+0

나는 코코아 프로그램 내에서 xcode의 콘솔을 시뮬레이트하고 싶습니다. 아무 곳에 나 nslog에서 나오면 내 프로그램에 표시됩니다. – user1173450

+2

[NSTextView에서 콘솔 출력을 쉽게 리디렉션 할 수 있습니까?] (http://stackoverflow.com/questions/3996110/how-can-i-easily-redirect-the-console-output-in-a -nstextview) –

답변

0

NSLog는 stderr를 통해 콘솔에 텍스트를 보냅니다. 콘솔 출력 (How can I easily redirect the console output in a NSTextView?)을 리디렉션하는 것이 가능하지만 이는 최선의 방법은 아닙니다.

먼저 생산 코드에서 NSLog를 사용하지 않아야합니다. Apple 시스템 로거를 사용하십시오 (C API를 통해 직접 또는 Mac 용 Google 도구 상자와 같은 Objective-C 래퍼 중 하나를 통해).

둘째, stderr을 리디렉션하는 대신 ASL 데이터베이스에서 읽어 와서 인앱 로그를 채 웁니다. 콘솔 메시지는 ASL을 통해 볼 수 있으므로 로깅을 위해 ASL (위 참조)으로 전환 할 때까지 기존 NSLog 코드로 작업 할 수 있습니다.