如何将\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":"杭州市"}

 

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-31
  • 2021-05-26
  • 2022-02-15
猜你喜欢
  • 2022-12-23
  • 2021-11-30
  • 2021-08-06
  • 2022-12-23
  • 2021-11-18
  • 2021-12-03
  • 2022-12-23
相关资源
相似解决方案