JSON原始資料:
--------------------------------------
{
"aa":
{"a1":"aa11",
"a2":"https:\/\/www.abc.com\/asfasd8asfad"
},
"bb":"bbbbbbbbbasdfasdxxx"}
--------------------------------------
如果JAVA用字典的話可以得到兩個鍵值。aa和bb;aa轉為字串值和JSON原來一樣。
是這個:
{"a1":"aa11",
"a2":"https:\/\/www.abc.com\/asfasd8asfad"
}
----------------
但我使用同樣的方式C#語言得到的鍵值aa和bb,bb是一樣的字串。這個不用講了。
但aa的值 是這個:
{"a1":"aa11",
"a2":"https://www.abc.com/asfasd8asfad"
}
--------------------------------------------
想知道如何得到原始的資料,使用字典。不轉義。因為我不知道里面是不是只有這個字符轉義了。所以必須要知道解決方法。
我的C#代碼如下:
Dictionary<string, object> dicData=https://bbs.csdn.net/topics/ JsonSerializer.Deserialize
因為在這句的時候已經把資料轉掉了。后面無法轉回來。
我就算加了引數也不行
JsonSerializerOptions jso = new JsonSerializerOptions()
{
Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping,//解決中文亂碼-不轉義Unicode資料
IgnoreNullValues = true,//去空值
};
這個加上也不行。
其實就是一句話,把物件JSON轉為字符時不要轉義;【提醒是JSON物件不是字串aa】
我要得到資料"https:\/\/www.abc.com\/asfasd8asfad"
不是得到資料"https://www.abc.com/asfasd8asfad"
uj5u.com熱心網友回復:
你是如何確認“原始資料”的?如果原始資料里邊就是 \/ 那么 c# 絕對不可能認為是/。只有可能是你的c#取得字串 strData 的代碼本來就不對。uj5u.com熱心網友回復:
貼出你的截圖,看看你如何、在什么除錯視窗上確定“原始資料”的?uj5u.com熱心網友回復:
謝謝你的提醒,不過我原始資料是獲取的。我斷點出來的。所以原始資料不會出錯。
以下為我的代碼。
uj5u.com熱心網友回復:

最后一行是我想得到的資料。關鍵就在序列化那里錯誤了。不知道如何修改
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/237833.html
標籤:C#
