2010-09-07 62 views
5

我正在爲我的java項目廣告使用官方JSON庫,我注意到了一些奇怪的東西。JSON字符串以及如何處理轉義字符

,如果我有一個JSON像這樣:

{ 
    "text": "This is a multiline\n text" 
} 

,我要儘量讓這樣的字符串:

System.out.println(jsonObject.getString("text")); 

我得到這個在輸出:

This is a multiline\n text 

而不是:

This is a multiline 
text 

任何人都知道處理特殊字符(如\ n和\ t)的正確方法嗎?我總是可以替換每一個,但我必須逐一處理所有這些。

回答

4

你沒有正確逃脫你的換行符,它應該是:

{ 
    "text": "This is a multiline\\n text" 
} 
+0

我看到......問題是我從web服務獲取我的json字符串,這是他們如何爲他們服務。你知道一個通​​用的方法來將字符串轉換爲正確的格式嗎? – 2010-09-07 13:26:08

+0

代碼中的轉義換行符是字面反斜槓,後面是字符n,而不是轉義序列。 – Rudu 2010-09-07 13:33:45

+0

我得到了什麼「問題」。我只是問是否有一個自動的方式來處理字符串,因爲它會被處理,如果它在java文件中鍵入它... – 2010-09-07 13:40:02