ShanxiKnowledgeBase/SXElectricityInformationAcq.../Assets/Scripts/InfoDataManager.cs

121 lines
3.4 KiB
C#

using System.Collections;
using System.Collections.Generic;
using DefaultNamespace;
using MotionFramework;
using UnityEngine;
public class ParsedData
{
public string SceneName { get; set; }
public int SceneModel { get; set; }
public int ExamId { get; set; }
public string UserId { get; set; }
public string Username { get; set; }
public string Token { get; set; }
public int UserTime { get; set; }
public int ClassId { get; set; }
public int ExamClassId { get; set; }
public string APIIP { get; set; }
}
/// <summary>
/// 0 场景名,1 练习或者考试,2 examId ,3 userId,4 userName,5 token,6 userTime,7 classId
/// 2024-06-14 15:04:12#'sxfz://;lyht,0,examId,userId,username,token,90,classId;/'|
/// </summary>
public class InfoDataManager : ModuleSingleton<InfoDataManager>, IModule
{
private ParsedData _parsedData;
private void ParseFileContent(string content)
{
// 首先按照 # 进行分割,获取日期和数据部分
var parts = content.Split('#');
if (parts.Length < 2)
{
Debug.LogError("Invalid file format.");
return;
}
// 日期部分
string date = parts[0];
Debug.Log("Date: " + date);
// 数据部分
string dataPart = parts[1];
// 进一步分割数据部分
var dataSections = dataPart.Split(';');
if (dataSections.Length < 2)
{
Debug.LogError("Invalid data format.");
return;
}
// 第一部分 sxfz://
string prefix = dataSections[0];
// Debug.Log("Prefix: " + prefix);
// 第二部分 lyht,0,18,userId,username,token,90
string dataSection = dataSections[1];
var dataElements = dataSection.Split(',');
if (dataElements.Length < 7)
{
Debug.LogError("Invalid data section format.");
return;
}
_parsedData.SceneName = dataElements[0];
_parsedData.SceneModel = int.Parse(dataElements[1]);
_parsedData.ExamId = int.Parse(dataElements[2]);
_parsedData.UserId = dataElements[3];
_parsedData.Username = WWW.UnEscapeURL(dataElements[4], System.Text.Encoding.UTF8);
_parsedData.Token = dataElements[5];
_parsedData.UserTime = int.Parse(dataElements[6]);
_parsedData.ClassId = int.Parse(dataElements[7]);
_parsedData.ExamClassId = int.Parse(dataElements[8]);
_parsedData.APIIP = dataElements[9];
Debug.Log("场景名: " + _parsedData.SceneName);
Debug.Log("场景模式: " + _parsedData.SceneModel);
Debug.Log("考试ID: " + _parsedData.ExamId);
Debug.Log("User ID: " + _parsedData.UserId);
Debug.Log("Username: " + _parsedData.Username);
Debug.Log("Token: " + _parsedData.Token);
Debug.Log("时间: " + _parsedData.UserTime);
Debug.Log("班级ID: " + _parsedData.ClassId);
}
public ParsedData GetParsedData()
{
return _parsedData;
}
public void OnCreate(object createParam)
{
_parsedData = new ParsedData();
string content = System.IO.File.ReadAllText(Application.streamingAssetsPath + "/info.ini");
ParseFileContent(content);
}
public void OnUpdate()
{
}
public void OnDestroy()
{
}
public void OnGUI()
{
}
}