zoukankan      html  css  js  c++  java
  • .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即可。

  • 相关阅读:
    生产者-消费者模型-线程安全队列Queue
    多线程简单案例
    cloudstack 用admin 账号创建虚拟机只是提示insufficient resource
    什么是工厂函数?Python 中工厂函数怎么理解?(转)
    rsync + mysql + gzip + --single-transaction
    Python中获取异常(try Exception)信息
    ansible copy 模块 changed false 没有变化
    _mysql.c:29:20: error: Python.h: No such file or directory
    常用网址
    Android 中常见控件的介绍和使用
  • 原文地址:https://www.cnblogs.com/SCscHero/p/15055617.html
Copyright © 2011-2022 走看看