UTF8编码转为中⽂字符串(c#)如何将\x开头的编码转换为字符串,如下数据:
var data = @"{\x22Province\x22:\x22\xE6\x9D\xAD\xE5\xB7\x9E\xE5\xB8\x82\x22}";
逻辑:
1、将\xdd的数据提取出来;
2、通过\x分隔出每个Char字符,即dd;
字符串转数组编码方式3、将得到的Char数组转换为byte数组;
4、通过UTF8编码获取原始字符串;
转换代码如下所⽰:
var data = @"{\x22Province\x22:\x22\xE6\x9D\xAD\xE5\xB7\x9E\xE5\xB8\x82\x22}";
var result = Regex.Replace(data, @"((\\x\w{2})+)",data => {
var value = data.Groups[1].Value;
var b = value.Split(new string[] { @"\x" }, StringSplitOptions.RemoveEmptyEntries).Select(it => Convert.ToByte(it, 16)).ToArray(); return Encoding.UTF8.GetString(b);
});
Console.WriteLine(result);
打印出来的结果:{"Province":"杭州市"}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论