最近要读写xml,里面有很多u1234等之类编码,于是想尝试解码,但是其中遇到了一些问题,其中一个问题就是,当xml读入u这类字符串时,存储的实际上是\u,因此若用System.Web.HttpUtility.UrlDecode之类是解不出来的,后来搜了一下,发现了一个方法,但是稍微有些缺陷,就是只能解纯url编码的字符串,于是稍微改良了一下。
复制代码
代码比较简单,就不多写了,这里贴出来,给有这方面的朋友应应急。这里给出原文链接:
C# 转换字符串形式的” \u1234 “ 为 “ u1234” 的unicode编码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25private string GetDecodeContent(string content) { string result = ""; if (content.IndexOf(@"u") != -1) { /************************************************************************/ string[] arr = content.Split(new string[] { "\u" }, StringSplitOptions.RemoveEmptyEntries); int length = arr.Length/* - 1*/; for (int i = 1; i < length; ++i) { if (arr[i].Length == 4) { result += (char)Convert.ToInt32(arr[i].Substring(0, 4), 16) + ""; } if (arr[i].Length > 4) { result += (char)Convert.ToInt32(arr[i].Substring(0, 4), 16) + arr[i].Substring(4, arr[i].Length - 4); } } result = arr[0] + result; /************************************************************************/ } return result; }
最后
以上就是忐忑水杯最近收集整理的关于C# \\ 转 \ url解码的全部内容,更多相关C#内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复