.Net/C#·在调用API时遇到返回JSON字符串带引号的问题

阅文时长 | 0.24分钟 字数统计 | 393.6字符
主要内容 | 1、引言&背景 2、Unicode转码&首尾字符串处理方式 3、Unicode转字符串的三种方法 4、声明与参考资料
『.Net/C#·在调用API时遇到返回JSON字符串带引号的问题』
编写人 | SCscHero 编写时间 | 2021/7/24 AM11:37
文章类型 | 系列 完成度 | 已完成
座右铭 每一个伟大的事业,都有一个微不足道的开始。

一、引言&背景   完成度:100%

a) 应对问题

在调用某些API时候,返回的JSON字符串经常是Unicode字符或首尾带着"号。在C#转换为标准字符串的几种方法。

b) 应对场景

在处理有Unicode编码或处理首尾双引号的场景。

c) 本文内容

  1. Unicode转码&首尾字符串处理方式。
  2. Unicode转字符串的三种方法。

二、Unicode转码&首尾字符串处理方式   完成度:100%

a) 处理成标准的格式

先Unicode解码在使用Trim()除去首尾多余的引号

string resultStr = Regex.Unescape(Str).Trim('"');

b) 使用第三方包中的方法

比如Newtonsoft.Json中的方法。

三、Unicode转字符串的三种方法   完成度:100%

a) 常用的Unicode解码的三种方式

  1. Regex.Unescape(str)
  2. HttpUtility.HtmlDecode(str)
  3. Uri.UnescapeDataString(str)

b) Uri.UnescapeDataString不同之处

上一节中的前两种方法使用方法类似都是将字符串解析成URL解码后的格式。而Uri.UnescapeDataString()方法是将字符串转换成URL未解码前的格式。如图。

四、声明与参考资料   完成度:100%

原创博文,未经许可请勿转载。

如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。

posted on 2021-07-24 16:56  SCscHero  阅读(1316)  评论(0编辑  收藏  举报

导航