Unity C#简单JSON到数组[重复]

Posted

技术标签:

【中文标题】Unity C#简单JSON到数组[重复]【英文标题】:Unity C# simple JSON to Array [duplicate] 【发布时间】:2021-11-13 12:49:21 【问题描述】:

我的 php 文件生成这样的播放器列表:

["EnzoDeg40","EDeg40","AstroGeek"]

我已经使用 Unity Web Request 成功下载了内容。但我似乎找不到将 JSON 转换为简单数组的解决方案。

【问题讨论】:

找不到解决方案?你的意思是Unity中的序列化器不能反序列化为字符串数组吗?还是? 恕我直言,JSON 应该类似于 "someKey": [ "EnzoDeg40", "EDeg40", "AstroGeek" ] 。现在我们可以创建一个以"someKey" 为字段的类,而JsonUtility.FromJson < TheClassCreated > ( jsonString ) 将完成剩下的工作。 【参考方案1】:

您可以使用JsonUtility。请注意,“Unity 不支持将其他类型直接传递给 API,例如原始类型或数组。如果您需要转换它们,请将它们包装在某种类或结构中。”。你必须这样做:

    [Serializable]
    public struct StringArrayWrapper  public string[] items; 

    private Start()
    
            var arry = JsonUtility.FromJson<StringArrayWrapper>("\"items\":[\"EnzoDeg40\",\"EDeg40\",\"AstroGeek\"]")

【讨论】:

也可以使用SimpleJSON加载数组github.com/simplejson/simplejson

以上是关于Unity C#简单JSON到数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Unity C#:如何将类的数组转换为 JSON [重复]

使用 LitJson 在 C# 中反序列化 JSON 对象数组 [重复]

使用 C# 在复杂的 JSON 数组中查找和打印重复项

从 C# 到 C++ 并返回的数组,没有不安全的代码 [重复]

C# JSON 反序列化:如何从 JSON 对象数组中获取值 [重复]

在 C# 中简单地美化 JSON [重复]