zoukankan      html  css  js  c++  java
  • C# 将MSMQ消息转换成Json格式 【优化】

    C# 将MSMQ消息转换成Json格式  【优化】

    转换函数:

     private string ConvertToJSON(string label, string body)
            {
                //TODO: convert to json
                string[] Lablelist = label.Split('|');
                string[] Bodylist = body.Split('|');               
                string JsonStr = "{"";
    
                NameValueCollection nvc = (NameValueCollection)ConfigurationManager.GetSection("LableName");
                foreach (string key in nvc.AllKeys)
                {
                    JsonStr = JsonStr + nvc[key] + "":"" + Lablelist[Convert.ToInt32(key)-1] + "","";
                }
    
                NameValueCollection nvd = (NameValueCollection)ConfigurationManager.GetSection("BodyName");
                foreach (string key in nvd.AllKeys)
                {
                    JsonStr = JsonStr + nvd[key] + "":"" + Bodylist[Convert.ToInt32(key) - 1] + "","";        
                }
    
                JsonStr = JsonStr.Remove(JsonStr.Length - 2, 2)+"}";
                Console.WriteLine(JsonStr);
                 return JsonStr;
            }

    配置文件:

    <?xml version="1.0" encoding="utf-8" ?

    > <configuration> <configSections> <section name="LableName" type="System.Configuration.NameValueSectionHandler"/> <!--以NameValue键值/对的形式返回配置节中的信息--> <section name="BodyName" type="System.Configuration.NameValueSectionHandler"/> <!--以Dictionary字典键值对的形式返回配置节中的信息--> </configSections> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> </startup> <LableName> <add key="1" value="MessageID"/> <add key="2" value="SendingBaseTag"/> <add key="3" value="SendingMachineName"/> <add key="4" value="MessageQueuePathName"/> <add key="5" value="CustomField1"/> <add key="6" value="CustomField2"/> </LableName> <BodyName> <add key="1" value="DataMode"/> <add key="2" value="DataModeID"/> <add key="3" value="ExperimentID"/> <add key="4" value="BasePenType"/> <add key="5" value="BasePenTypeID"/> <add key="6" value="MID"/> <add key="7" value="StationTag"/> <add key="8" value="DateTime"/> <add key="9" value="Path1"/> <add key="10" value="EquipmentID1"/> <add key="11" value="Path2"/> <add key="12" value="EquipmentID2"/> </BodyName> </configuration>


    Thank you!

  • 相关阅读:
    Spring Boot 返回 XML 数据,一分钟搞定!
    Spring Cloud Alibaba Sentinel 整合 Feign 的设计实现
    周末去面试,进去 5 分钟就出来了…
    Spring Boot 返回 JSON 数据,一分钟搞定!
    Java 11 已发布,String 还能这样玩!
    Hashtable 为什么不叫 HashTable?
    Java 中初始化 List 集合的 6 种方式!
    HashMap 和 Hashtable 的 6 个区别,最后一个没几个人知道!
    毕业不到一年,绩效打了个D!
    poj 3111 K Best (二分搜索之最大化平均值之01分数规划)
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5202969.html
Copyright © 2011-2022 走看看