zoukankan      html  css  js  c++  java
  • C#中JSON字符串中的转义字符

    新建一个.NET Core控制台项目,然后引入Json.NET的NuGet包:Newtonsoft.Json,我们使用Json.NET将类序列化为JSON字符串,再将JSON字符串反序列化为类,代码如下:

    using Newtonsoft.Json;
    using System;
    
    namespace NetCoreJson
    {
        public class MessageContainer
        {
            public string Message1
            {
                get;
                set;
            }
    
            public string Message2
            {
                get;
                set;
            }
    
            public string Message3
            {
                get;
                set;
            }
        }
    
        class Program
        {
            static void Main(string[] args)
            {
                MessageContainer messageContainerToJson = new MessageContainer()
                {
                    Message1 = "这是带双引号转义字符的消息:"今天是个好天气!"",
                    Message2 = "这是带换行的消息:今天天气真好
    适合出去郊游
    真是愉快的一天",
                    Message3 = "这是带其它转义字符的消息:制表符	退格符斜线\空格 "
                };
    
                string toJsonMessage = JsonConvert.SerializeObject(messageContainerToJson, Formatting.Indented);
    
                Console.WriteLine(toJsonMessage);
                /*
                    {
                      "Message1": "这是带双引号转义字符的消息:"今天是个好天气!"",
                      "Message2": "这是带换行的消息:今天天气真好
    适合出去郊游
    真是愉快的一天",
                      "Message3": "这是带其它转义字符的消息:制表符	退格符斜线\空格 "
                    }
                 */
    
                string fromJsonMessage = "{"Message1":"这是带双引号转义字符的消息:\"今天是个好天气!\"","Message2":"这是带换行的消息:今天天气真好\n适合出去郊游\n真是愉快的一天","Message3":"这是带其它转义字符的消息:制表符\t退格符\b斜线\\空格 "}";
    
                MessageContainer messageContainerFromJson = JsonConvert.DeserializeObject<MessageContainer>(fromJsonMessage);
    
                Console.WriteLine("Message1为:{0}", messageContainerFromJson.Message1);
                Console.WriteLine("Message2为:{0}", messageContainerFromJson.Message2);
                Console.WriteLine("Message3为:{0}", messageContainerFromJson.Message3);
    
                Console.WriteLine("Press any key to end...");
                Console.ReadKey();
            }
        }
    }

    可以看到Json.NET可以将字符串中"和 等转义字符,进行序列化和反序列化,上面程序的运行结果如下:

    所以可以看到在JSON中,可以很好地处理转义字符的序列化和反序列化。

  • 相关阅读:
    OFBiz:初始RequestHandler
    OFBiz:添加样式【转】
    OFBiz:配置过程
    OFBiz:component-load.xml
    OFBiz:组件装入位置
    OFBiz:添加实体栏位
    OFBiz:扩展controller.xml
    Adminer
    定制ADempiere(1)- 会议记录
    OpenResty 通过二级域名做跳转
  • 原文地址:https://www.cnblogs.com/OpenCoder/p/12960880.html
Copyright © 2011-2022 走看看