【发布时间】:2018-09-02 23:48:49
【问题描述】:
我试图在 Unity 中简单地将对象序列化为 json。我找到了几篇关于这个主题的文章,但似乎没有任何效果。它不会直接抛出异常,但不会将对象转换为 json 字符串。我已经对这些进行了大量研究并尝试了各种样本。我不确定问题是类还是调用转换为 json 的逻辑。我可以使用 .net 轻松转换,但这是针对 MonoScript 中的 Unity,所以过程似乎有点不同。我假设当您将对象转换为 json 字符串时,它不应该将基数列为“null”。它还在转换后传入一个空的 json 字符串。
用户登录类:
using UnityEngine;
using System.Collections;
using System;
[Serializable]
public class UserLogIn : MonoBehaviour
{
public string Email;
public string Password;
}
这是我在统一脚本中的代码:
private UserLogIn _LogIn = new UserLogIn();
public void SetText(string text)
{
//[SerializeField]
//UserLogIn _LogIn = new UserLogIn();
//WhiteBoxGamingTestRequest();
_LogIn.Email = "testemail@gmail.com";
_LogIn.Password = "12345";
string json = JsonUtility.ToJson(_LogIn);
Debug.Log(json);
//User_LogIn(_login);
//text = _bolResponse.ToString();
//Text txt = transform.Find("Text").GetComponent<Text>();
//txt.text = text;
}
我试过这个: Serialize and Deserialize Json and Json Array in Unity
似乎仍然无法正常工作。寻找建议或更正。
转换后 json = {} 应该是一个包含值的字符串。 Unity的json转换器坏了吗?
【问题讨论】:
-
您使用的是c# 还是unityscript?正如stackoverflow.com/tags/unityscript/info 中所述,请勿使用此标记来描述 C# 中的 Unity 脚本:UnityScript 是一种单独的语言,只能用于使用该语言的问题。
-
您遇到了什么问题?您提供了一个似乎是例外的屏幕截图,但除了说似乎没有任何工作之外没有解释问题。如果异常是问题所在,请edit 您的问题包含异常的完整
ToString()输出作为文本,而不是作为屏幕截图。原因请见Why not upload images of code on SO when asking a question和Discourage screenshots of code and/or errors。 -
也不例外,但如果你看截图它没有转换为json字符串
-
这是一个单声道脚本。它没有将对象转换为 json 字符串。没有错误只是转换对象失败。