当前位置:编程学习 > C#/ASP.NET >>

关于c#的有"和\的变量问题

类型是String,变量内容是:"{\"flag\":\"2003\",\"msg\":\"系统异常\",\"res\":\"\"}"

求助应该怎么转换或者是转义得到正确的变量内容,谢谢 --------------------编程问答-------------------- 字符串前面加上@,如string a=@"{\"flag\":\"2003\",\"msg\":\"系统异常\",\"res\":\"\"}"; --------------------编程问答-------------------- 使用json反序列化操作。 --------------------编程问答--------------------
引用 2 楼 sp1234 的回复:
使用json反序列化操作。


求代码 --------------------编程问答-------------------- using Newtonsoft.Json.Linq;

             string jdata ="{\"flag\":\"2003\",\"msg\":\"系统异常\",\"res\":\"\"}";
             JObject jo = JObject.Parse(jdata);
             string[] values = jo.Properties().Select(item => item.Value.ToString()).ToArray();
             MessageBox.Show(values[0].ToString()+" "+ values[1].ToString()+"  "+values[2].ToString());
--------------------编程问答-------------------- 字串前加上@是不是最簡單的呢? json反序列化? --------------------编程问答--------------------
引用 3 楼 setcdq9801 的回复:
Quote: 引用 2 楼 sp1234 的回复:

使用json反序列化操作。


求代码

http://bbs.csdn.net/topics/390574794 --------------------编程问答-------------------- 如果只需要进行很简单的操作,例如简单地读取字段值然后就扔掉(不需要内存中实例化自定义类型的业务对象),那么就可以直接读取,例如
string x = JObject.Parse(inputStr);
var f = (string)x["flag"];
之类的。

当然反序列化是一个比较高级的做法。其实许多时候,我们需要先学会封装得比较高级(但是稍慢)的做法,然后才学习低级(但是轻快一点)的做法。因为我们往往接下来做的事情不简单,所以应该优先学习高级的做法,而不是低级的。 --------------------编程问答--------------------
引用 5 楼 sunylf 的回复:
字串前加上@是不是最簡單的呢? json反序列化?


加@不和,还有引号,位置不对。 --------------------编程问答--------------------
引用 7 楼 sp1234 的回复:
如果只需要进行很简单的操作,例如简单地读取字段值然后就扔掉(不需要内存中实例化自定义类型的业务对象),那么就可以直接读取,例如
string x = JObject.Parse(inputStr);
var f = (string)x["flag"];
之类的。

当然反序列化是一个比较高级的做法。其实许多时候,我们需要先学会封装得比较高级(但是稍慢)的做法,然后才学习低级(但是轻快一点)的做法。因为我们往往接下来做的事情不简单,所以应该优先学习高级的做法,而不是低级的。


我不是读取,我是字符串比较。。。所以,不能去掉。 --------------------编程问答--------------------
引用 4 楼 wind_cloud2011 的回复:
using Newtonsoft.Json.Linq;

             string jdata ="{\"flag\":\"2003\",\"msg\":\"系统异常\",\"res\":\"\"}";
             JObject jo = JObject.Parse(jdata);
             string[] values = jo.Properties().Select(item => item.Value.ToString()).ToArray();
             MessageBox.Show(values[0].ToString()+" "+ values[1].ToString()+"  "+values[2].ToString());


谢谢,我试下
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,