網頁

2012年3月15日 星期四

iOS學習_Log問題(中文,消失,亂碼,LLDB)

今早不小心更新了iPad、Xcode、MAC,經過兩小時左右的奮鬥,終於在一點前完成更新,立刻進入接資料的相關實作,習慣很好的先log出接近來的內容,免得後來出錯找錯地方,但就在按下Run之後,慘絕人寰的事情又發生了:

不管是接WebService、GET接網頁、POST接網頁、網頁轉碼、iOS裡面轉碼,看到的不是亂碼、就是直接消失,不然就是被截斷的亂七八糟,就在兩個多小時的編碼奮鬥後,做了一個簡單到自己覺得很笨的測試:

NSLog(@"%@",@"喔喔");

不測還好,一測這個“喔喔”就像是擺在我桌上的食物一樣消失了,接著我又做了一個更蠢的事情:

NSLog(@"%@",@"ola");
NSLog(@"%@",@"羊肉爐");
NSLog(@"%@",@"ola");

很好,兩個ola疊在log列表,沒有看到“羊肉爐”,所以....前兩個小時的亂七八糟測試方向都錯了!!!!!!!

接著,放棄NSLog直接把接進來的資料顯示在iPad上:OK~~~~

所以問題就是log列表,沒辦法正確顯示出中文,這個原因真的讓人感到很好笑,用來檢查結果的工具竟然自己就有問題,這就像在百慕達要指北一樣有趣。

總之,問題出在log列表,原因是在Xcode更新為4.3後,預設的Debugger的模式為LLDB,可能因為剛推出來,沒有測到中文顯示的部分,所以可以把該模式改回之前使用的GDB模式。

更改位置:


然後重新啓動Xcode。

恭喜你~~博大精深的中文回來了!!!!YA~~

6 則留言:

  1. 謝謝。我昨天也剛遇到這個問題。....

    回覆刪除
  2. 我覺得這個超難找原因的 :D

    回覆刪除
  3. 太感謝你了

    我也剛好遇到這問題

    回覆刪除
  4. XCode 4.4 好像沒這問題了 我是用LLDB 但是中文可以顯示

    回覆刪除
  5. 我還沒更新到4.4,如果OK就太好了。

    回覆刪除