2012-08-02 61 views
0

假設我想打印出一個字符串是這樣的:爲什麼我的NSString導致NSLog只顯示一部分字符串?

NSLog(@"*** DOWNLOAD START ***\n%@\n*** DOWNLOAD END ***", bufString); 

bufString是一個NSString。 bufString包含什麼可以使輸出在第一個字符後被截斷?我的猜測是,這與將換行符轉換爲字符串終止字符有關。

從日誌該語句的完整的讀出:

2012-08-02 12:20:02.595 MyApp[18863:710f] *** DOWNLOAD START *** 
{ 

[bufString長度]的結果是15914.它試圖顯示的數據是一個多行JSON。

我可以做什麼來打印出整個字符串?

+0

你看過下一行嗎? – 2012-08-02 19:28:56

+0

看看這個問題;你可能能夠從中獲得解決方案。 http://stackoverflow.com/q/3581532/1487063 – Dustin 2012-08-02 19:38:14

+1

您可以通過將'NSString'轉換爲C字符串(可能無害轉換爲ASCII)來查看內容,在循環中進行檢查並打印每個字節的代碼。你會看到是否有任何奇怪的控制字符值。 – coverback 2012-08-02 19:38:57

回答

0

在我的情況下,我從字節創建NSString,但只有每四個字節包含字符信息。底線 - 如果您從字節創建NSString,請確保您知道該內存中的內容!一次遍歷NSString字符並打印結果(由封底提示)揭示了這個問題。

相關問題