zoukankan      html  css  js  c++  java
  • 输出JSON问题

    拼接JSON字符串,有些特殊字符需要替换掉源代码:

            public static string ToJson(this string s) {

                StringBuilder sb = new StringBuilder();

                for (int i = 0; i < s.Length; i++) {

                    char c = s.ToCharArray()[i];

                    switch (c) {

                        case '\"': sb.Append("\\\""); break;

                        case '\\': sb.Append("\\\\"); break;

                        case '/': sb.Append("\\/"); break;

                        case '\b': sb.Append("\\b"); break;

                        case '\f': sb.Append("\\f"); break;

                        case '\n': sb.Append("\\n"); break;

                        case '\r': sb.Append("\\r"); break;

                        case '\t': sb.Append("\\t"); break;

                        default: sb.Append(c); break;

                    }

                }

                return sb.ToString();

            }

    如果未替换这些特殊字符生成的JSON不会被正确解析。

    推荐使用NET提供的JavaScriptSerializer对象生成JSON字符串。

    源代码:

            public static string ToJson(this object obj){

                return ToJson(obj, null);

            }

            public static string ToJson(this object obj, IEnumerable<JavaScriptConverter> jsonConverters) {

                JavaScriptSerializer serializer = new JavaScriptSerializer();

                if (jsonConverters != null) serializer.RegisterConverters(jsonConverters ?? new JavaScriptConverter[0]);

                return serializer.Serialize(obj);

            }

  • 相关阅读:
    nexus 安装与启动(windows本版)
    linux 安装 mysql8
    02、linux 常用指令
    linux 安装tomcat8
    CentOS7使用firewalld打开关闭防火墙与端口
    03、linux 安装jdk
    rabbit mq的使用
    跨域与同源策略
    JDK1.8新特性04--Optional处理空指针问题
    HttpAsyncClient异步调用
  • 原文地址:https://www.cnblogs.com/yidianfeng/p/1797983.html
Copyright © 2011-2022 走看看