截止目前,设备运行了多少天、小时、分钟;
using UnityEngine;
using System;
using TMPro;
public class MachineRuntimeTracker : MonoBehaviour
{
// 保存设备启动时间的字符串,格式为"YYYY-MM-DD"
private string startTimeString = "2007-01-01 08:00";
// 设备启动时间
private DateTime startTime;
// 当前时间
private DateTime currentTime;
// 累计运行天数
private int totalDays;
private TMP_Text dayText;
public enum Date {day , hour, minute };
public Date _date;
void Start()
{
// 将启动时间字符串解析为DateTime对象
if (DateTime.TryParseExact(startTimeString, "yyyy-MM-dd HH:mm", null, System.Globalization.DateTimeStyles.None, out startTime))
{
// Debug.Log("设备启动时间:" + startTime.ToString("yyyy-MM-dd HH:mm"));
}
else
{
Debug.LogError("无法解析启动时间字符串!");
return;
}
dayText = GetComponent<TMP_Text>();
// 获取当前时间
currentTime = DateTime.Now;
// 计算累计运行天数
TimeSpan elapsedTime = currentTime - startTime;
totalDays = (int)elapsedTime.Days;
// 输出累计运行时间
// Debug.Log("累计运行时间:" + totalDays + "天 " + elapsedTime.Hours + "小时 " + elapsedTime.Minutes + "分钟");
if (_date ==Date.day)
{
dayText.text = totalDays.ToString();
}
else if (_date == Date.hour)
{
dayText.text = elapsedTime.Hours.ToString();
}
else if (_date == Date.minute)
{
dayText.text = elapsedTime.Minutes.ToString();
}
}
}