json序列化后页面显示有反斜杠’\‘的问题
来源:互联网 发布:去痘 知乎 编辑:程序博客网 时间:2024/04/30 12:23
在做项目中,前台传来的数据为Json字符串,因为没有合适的实体来这些字段,所有就用了最简单的方式:截取字符串。
前台Json字符串为:
string s1 ="[{\"ID\":\"99d2a341-ea2e-4f04-b4f4-623153d64336\",\"Name\":\"王五\",\"TotalScores\":80,\"工作效率\":\"B\",\"职业道德\":\"B\",\"业务能力\":\"A\",\"链接自律\":\"B\",\"工作成绩\":\"B\"},{\"ID\":\"728f72ac-473b-4bde-bf83-7ed93d3fd9e6\",\"Name\":\"李四\",\"TotalScores\":80,\"工作效率\":\"B\",\"职业道德\":\"B\",\"业务能力\":\"A\",\"链接自律\":\"B\",\"工作成绩\":\"B\"},{\"ID\":\"29c80443-d0ac-414c-91b5-acd5e69e28f2\",\"Name\":\"刘七\",\"TotalScores\":80,\"工作效率\":\"B\",\"职业道德\":\"B\",\"业务能力\":\"A\",\"链接自律\":\"B\",\"工作成绩\":\"B\"}]";
可以看到其实在微软中将“\“”作为双引号用的,思路是这样的:
1、去掉“\“”
代码实现:
strings11=s1.Replace("\"","");
2、去掉”[]“
代码实现:
string s22 =s11.Replace("[","");
string s33 =s22.Replace("]", "");
这是时候我们得到的s33是这样的:
s33="{ID:99d2a341-ea2e-4f04-b4f4-623153d64336,Name:王五,TotalScores:80,工作效率:B,职业道德:B,业务能力:A,链接自律:B,工作成绩:B},{ID:728f72ac-473b-4bde-bf83-7ed93d3fd9e6,Name:李四,TotalScores:80,工作效率:B,职业道德:B,业务能力:A,链接自律:B,工作成绩:B},{ID:29c80443-d0ac-414c-91b5-acd5e69e28f2,Name:刘七,TotalScores:80,工作效率:B,职业道德:B,业务能力:A,链接自律:B,工作成绩:B}"
3、将”},{“调换为”}“,去掉空值
代码实现:
string s44 =s33.Replace("},{","}");
s44="{ID:99d2a341-ea2e-4f04-b4f4-623153d64336,Name:王五,TotalScores:80,工作效率:B,职业道德:B,业务能力:A,链接自律:B,工作成绩:B}ID:728f72ac-473b-4bde-bf83-7ed93d3fd9e6,Name:李四,TotalScores:80,工作效率:B,职业道德:B,业务能力:A,链接自律:B,工作成绩:B}ID:29c80443-d0ac-414c-91b5-acd5e69e28f2,Name:刘七,TotalScores:80,工作效率:B,职业道德:B,业务能力:A,链接自律:B,工作成绩:B}"
string[] s55s =s44.Split(new Char[] { '}', '{' }, StringSplitOptions.RemoveEmptyEntries);
s55s是得到的”ID:99d2a341-ea2e-4f04-b4f4-623153d64336,Name:王五,...“将得到的结果放在字典中:
<span style="font-size:18px;"> for (int i = 0; i < updatedEdit.Length; i++) { //string[] detailevaluationinfo = updatedEdit[i].Split(','); string pat = @"(?<key>[^,:\s]*):(?<value>[^,:\s]*)"; //一组之间的数据拿出来 //for (int j = 0; j < detailevaluationinfo.Length; j++) { MatchCollection matches = Regex.Matches(updatedEdit[i], pat); Dictionary<string, string> dict = new Dictionary<string, string>(); foreach (Match m in matches) { if (dict.ContainsKey(m.Groups["key"].Value)) continue;//不能重复啊 dict.Add(m.Groups["key"].Value, m.Groups["value"].Value); }}</span>
这样就可以将Json字符串截取出来。
- json序列化后页面显示有反斜杠’\‘的问题
- iOS中使用NSSerialization把对象转为JSON字符串后,多出来反斜杠的问题
- json 返回的string有反斜杠 一种原因
- /斜杠-\反斜杠问题
- 正则的反斜杠问题
- json转义反斜杠
- json反斜杠处理
- C语言,宏定义的反斜杠后不能有空格
- firefox中解析反斜杠和斜杠的问题
- ajax解析Java传来的json文本中反斜杠(\)问题
- Java 反斜杠如何转义的问题
- java中反斜杠的替换问题
- 一个反斜杠"\"引发的问题
- Python字符串行尾反斜杠\的问题
- Nginx访问二级目录后/(反斜杠)无法访问问题的解决办法
- VS2015输入反斜杠显示成人民币符号的问题
- 关于文件路径的反斜杠正斜杠和双斜杠问题
- 关于文件路径的反斜杠正斜杠和双斜杠问题
- 关于硬件信息处理的一些办法
- Android sdk content loader 0%的解决方案
- UILabel
- List接口及其实现类、Map接口及其实现类
- mybatis动态SQL的<where>标签
- json序列化后页面显示有反斜杠’\‘的问题
- 重载
- Swift基础之UITextField
- 数组模拟链表运作!!L2-002. 链表去重
- Unable to execute dex: GC overhead limit exceeded GC overhead limit exceeded
- Android 直接打开微信,微博,QQ
- python中使用xlrd、xlwt操作excel表格详解
- Git入门操作
- Maven之——eclipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.4.3解决方案