我與在後端和C#的客戶端PHP工作。 所以,當我在JSON接收來自服務器的多行消息我這樣做:JSON誤差 r n在C#中的字符串
dynamic answer = JsonConvert.DeserializeObject(resultHttpPost);
string body = answer.body;
但我發現了一個錯誤:
Symbol of new line is in constant
正因爲如此,我不能使用多線消息。
我試過這樣,它不工作,要麼
resultHttpPost = resultHttpPost.Replace("\\n", "\n").Replace("\\r", "\r").Replace("\\t", "\t");
project.Variables["var_dump"].Value = resultHttpPost;
dynamic answer = JsonConvert.DeserializeObject(resultHttpPost);
所以我怎麼做工作?
爲JSON例子:
{"status":"response_ok","message":{"body":"Hi test,\r\n\r\ntesting it, lorem ipsum lorem ipsumlorem ipsumlorem ipsumlorem ipsum.\r\n\r\nSignature","id":1015,"id_thread":741},"id_thread":741}
顯示「resultHttpPost」的值。 – BWA
{ 「狀態」: 「response_ok」, 「消息」:{ 「本體」: 「HI試驗,\ r \ n \ r \ ntesting它,Lorem存有LOREM ipsumlorem ipsumlorem ipsumlorem ipsum的\ r \ n \ r \ n簽名」 ,「id」:1015,「id_thread」:741},「id_thread」:741} – Nelex
@Nelex你爲什麼試圖替換換行符*? C#,Json.NET和Json本身可以很好地處理換行符。你發佈的代碼也沒有多大意義 - 你在哪裏找到'\\ r'?你可能會被調試器對換行符的表示困惑嗎?你有沒有嘗試反序列化原始字符串? –