标签: litjson

在unity3d中使用LitJson

2个问题.

1)在Javascript中编写脚本时是否可以按原样使用LitJson库?这是一个关于能够在javascript源代码中使用c#source的一般问题.

2)我是c#dev的新手.我似乎无法让LitJson启动并运行.以下代码抛出此错误:An object reference is required to access non-static memberLitJson.JsonReader.Read()'`

using UnityEngine;
using System.Collections;

public class Loadr : MonoBehaviour {
string url= "http://developer.echonest.com/api/v4/artist/images?api_key=N6E4NIOVYMTHNDM8J&id=ARH6W4X1187B99274F&format=json&results=1&start=0&license=unknown";
void  Start (){
    WWW www = new WWW(url);
    print(www.text);
    Object a = LitJson.JsonReader.Read(www.text);
    print(a.response.status);

    }

}
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

c# json unity-game-engine litjson

5
推荐指数
1
解决办法
1万
查看次数

如何使用Litjson解析json数组?

我正在开发一个应用程序,其中我使用的数据来自服务器的json格式.但是,我能够解析普通的json数据,但无法用数组解析json数据,

json响应如下,

[{"id_user":"80","services":
    [{"idservice":"3","title":"dni-e","message":"Texto para el dni-e"},
     {"idservice":"4","title":"Tarjeta azul","message":"Texto para la tarjeta azul"}]
}]
Run Code Online (Sandbox Code Playgroud)

我该怎么读这个json数组?

注意:我使用Litjson进行解析.

c# arrays json litjson

3
推荐指数
1
解决办法
2万
查看次数

LitJSON库,格式为FLOAT / DOUBLE问题

由于JSON是一种可以写为字符串的格式,因此必须由库解释或有时由语言本身来解释。

在较旧的C#版本中,没有类似的东西。使用LitJSON库,我遇到以下问题,我有一个名为Vector3的类,其中包含3个浮点值(不是double)。

public class Vector3 {
 public float x{get;set;}
 public float y{get;set;}
 public float z{get;set;}
}
Run Code Online (Sandbox Code Playgroud)

使用下面的LitJSON代码片段,它实际上应该用值填充Vector3的实例。

Vector3 test = JsonMapper.ToObject<Vector3>("{'x':1.0,'y':1.0,'z':1.0}");
Run Code Online (Sandbox Code Playgroud)

但是发生错误“无法为System.Single分配值(类型Single.Double)”

看来它只知道double但没有float:/

有什么解决办法吗?

c# json litjson

3
推荐指数
1
解决办法
4022
查看次数

使用不同的对象类型反序列化 JSON

我有一个 json 结构如下:

{
   "result":
   [
      {"a":{"b":1,"c":2}},
      {"a":{"b":1,"c":2}},
      {"a":{"b":1,"c":2}},
      {"a":[]}
   ]
}
Run Code Online (Sandbox Code Playgroud)

所以我创建了类结构来将其解析为 C# 对象:

public class JsonTest
{
   public JsonTestResult[] result;
}

public class JsonTestResult
{
   public JsonTestResultValue a;
}

public class JsonTestResultValue
{
   public int b;
   public int c;
}
Run Code Online (Sandbox Code Playgroud)

当尝试通过我解析这个时LitJson出现错误:

类型 JsonTestResultValue 不能充当数组

问题出在 json: 的这一部分{"a":[]},必须有{}而不是[],因为它实际上是一个对象,而不是数组。

现在我被困在这里,无法理解我必须为此 json 属性使用哪种类型 - 数组或任何对象类型都是不合适的。我现在想到的就是替换大括号(用 simple 的正则表达式String.Replace),但我确信,必须有更合适的方法来反序列化它。

c# json litjson

0
推荐指数
1
解决办法
6867
查看次数

标签 统计

c# ×4

json ×4

litjson ×4

arrays ×1

unity-game-engine ×1