Untiy里JsonUtility.ToJson使用方法

Untiy里JsonUtility.ToJson使用方法

unityapi里只是做了一些简单的介绍,下面简单介绍下结构体里有数组的情况下ToJson()的使用方法;

1.要把数组结构里面的元素单独赋值,开辟内存再进行ToJson()
2.结构体必须要可序列化,不然识别不出来

下面展示一些 内联代码片

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Xml;
using System;

[Serializable]
public class CurlingthrowData
{
		public Vector3 Dir;//Current Rotation
	 public Vector3 posZ;//Current Position
   	 public float Time;//CurrentTime
	 public CurlingthrowData(Vector3 Dir1, Vector3 posZ1, float Time1)
	 {
    Dir = Dir1;
    posZ = posZ1;
    Time = Time1;
  }
}
[Serializable]
public class L4RsultData
{
		 public CurlingthrowData []ThrowDatas1;
		public Vector3 CurlingStopPosition;
		 public Vector3 CurlingStopEulerAngles;
		 public float StopTime;
		 public float Score;
		public L4RsultData(CurlingthrowData [] ThrowDatas11, Vector3 CurlingStopPosition1, Vector3 					CurlingStopEulerAngles1, float StopTime1, float Score1)
		 {
   			 CurlingStopPosition = CurlingStopPosition1;
   			 ThrowDatas1 = ThrowDatas11;
   			 CurlingStopEulerAngles = CurlingStopEulerAngles1;
   			 StopTime = StopTime1;
   			 Score = Score1;

			}
			}
	[Serializable]
	public class Strenth
	{	
 	public L4RsultData[] L4RsultData;
	}

		public class Test_Graph : MonoBehaviour 
		{
		 	 public Strenth strenth;
			
		 	
			 public float health;
void Start()   
{
    strenth = new Strenth();
    

    Vector3 temp = new Vector3(0, 2, 2);
    Vector3 temp1 = new Vector3(2, 2, 2);
    float sa = 2;

    CurlingthrowData temp2 = new CurlingthrowData(temp, temp1, sa);
    CurlingthrowData[] temp3 = new CurlingthrowData[1];
    temp3[0] = temp2;
    Vector3 curliingstopPosition = new Vector3(0, 0, 0);
    Vector3 CurlingStopEulerAngles = new Vector3(0, 0, 0);
    float stoptime = 2;
    float score = 30;

    strenth.L4RsultData = new L4RsultData [1];
    strenth.L4RsultData[0] = new L4RsultData ( temp3, curliingstopPosition, CurlingStopEulerAngles, stoptime, score );


    string a = JsonUtility.ToJson(strenth);
    print(a);//最后运行一下

}



public void Update()
{

}

}

猜你喜欢

转载自blog.csdn.net/qq_43718731/article/details/105126831
今日推荐