我有一个文本文件,其中包含如下所示的数据:
{\"_clientId\":\"123\",\"_timestamp\":22548}
{\"_clientId\":\"222\",\"_timestamp\":22590}
(他们已经有转义字符了)
当我使用string[] lines = System.IO.File.ReadAllLines(@"datafile.txt");例如读取文件时
,它将字符串存储lines为:
"{\\\"_clientId\\\":\\\"123\\\",\\\"_timestamp\\\":22548}"
"{\\\"_clientId\":\\\"222\\\",\\\"_timestamp\\\":22590}"
我的问题是:有没有办法将它们存储在字符串变量中而没有额外的转义字符(存储它们出现在文件中)?
这些行应该与您string[]在文件中输入的内容完全一致地存储.
如果你看看你的线调试时,调试器将显示仅可视化的目的逃逸.这可能就是你所看到的.
编辑:
详细查看您的示例后,问题是您已经转义了数据文件中的引号.数据文件本身不包含有效的Json.
这应该可以解决问题:
string fixedLine = line.Replace("\\\"", "\"");
Run Code Online (Sandbox Code Playgroud)
然后反序列化fixedLine.