【问题标题】:Convert string type into Array List将字符串类型转换为数组列表
【发布时间】:2017-10-31 12:24:11
【问题描述】:

如何将这样的字符串转换为数组列表

 {'id':'6726','Codigo':'AlmNumTrab','Denominacion':'Almacen','Descripcion':'Almacenes','TipoCampo':'2','TipoIntroduccion':'0'}

我想像datos[0]一样直接获取id字段

谢谢

【问题讨论】:

    标签: c# arrays string serialization


    【解决方案1】:

    你没有提到语言搜索 google 作为键值数组
    这里是 c# 的代码:

    var Dictionary= new Dictionary<string, object>();
    dictionary.Add("id", "6726");
    
    object id= dictionary["id"];
    

    【讨论】:

      【解决方案2】:
      1. 使用Json.Net nuget package
      2. 创建一个具有匹配属性的类 yourClassHere(或将 json 复制为 Visual Studio 中的类)。
      3. 使用此代码

      未经测试,但应该可以解决问题:

      string yourStringIsJson = "{'id':'6726','Codigo':'AlmNumTrab','Denominacion':'Almacen','Descripcion':'Almacenes','TipoCampo':'2','TipoIntroduccion':'0'}";
      
      yourClassHere deserializedThing = JsonConvert.DeserializeObject<yourClassHere>(yourStringIsJson);
      

      【讨论】:

        【解决方案3】:

        这是一个 JSON 字符串。所以最好这样对待它。

        因此,使用 C# 添加带有 NuGet 的 Newtosoft JSON 库。

        然后您可以将其反序列化为字典

        var dict = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>("{'id':'6726','Codigo':'AlmNumTrab','Denominacion':'Almacen','Descripcion':'Almacenes','TipoCampo':'2','TipoIntroduccion':'0'}");
        

        然后您可以像这样访问这些值:

        dict["id"] // this should give you 6726
        

        【讨论】:

          【解决方案4】:

          感谢大家的回答。

          我终于找到了一个简单的解决方案,不是 ArrayList 但我认为是更好的解决方案。

          String idCampo = JObject.Parse(datos)["id"].ToString();
          

          如您所知,这会转换 JObject 中的字符串,我可以直接访问它。

          无论如何我都会尝试你的答案,只是为了学习。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2022-10-13
            • 2016-06-04
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-02-09
            • 2021-07-14
            相关资源
            最近更新 更多