を使用してエスケープ文字を含む文字列をデシリアライズ:私は、既知の種類のリストにそれをデシリアライズしようとしている私はこのような文字列を持っているJsonConvert
"[
{
\"SomeProperty\": 22
}
]"
を:
string toProcess = [email protected]"[{text}]".Replace("\n", ",");
toProcess = Regex.Unescape(toProcess);
List<KnownType> objectList = JsonConvert.DeserializeObject<List<KnownType>>(toProcess);
私がいることがわかりしかし、 \"
文字を含む文字列を逆シリアル化しようとしていますが、それはCannot deserialize the current JSON object
で失敗しています。これを正しく非直列化するにはどうすればよいですか?
あなたの文字列は有効なJSONではありません。だからあなたはそれをデシリアライズできません。これはhttps://jsonlint.com/で確認できます。さらに、有効なJSON文字列は、それを逆シリアル化する前に操作する必要はありません。したがって、私はあなたのアプローチが正しくないと思います。 – Christos
あなたのjsonはまさにこのようなものですか、それともデバッガのウィンドウに表示されていますか? –
@Christos私が使用している文字列は有効なJSONではありません。私はそれを有効なJSONにしようとしています。 – SB2055