unity工具类篇 时间间隔帮助类(天时分秒) 下篇

Posted 彭老希

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity工具类篇 时间间隔帮助类(天时分秒) 下篇相关的知识,希望对你有一定的参考价值。

using System;
using UnityEngine;
public class TimeTest : MonoBehaviour

    DateTime startTime;
    private void Start()
    
        //获取开始时的时间
        startTime = DateTime.Now;
    
    private void Update()
    
        if (Input.GetKeyDown(KeyCode.Z))
        
            //获取当前时间,并打印当前时间与开始时间相差秒数(以秒为单位)
            DateTime curtimer = DateTime.Now;
            int timer = GetSubSeconds(startTime, curtimer);
            Debug.Log(timer);
        
    
    /// <summary>
    /// 获取间隔秒数
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubSeconds(DateTime startTimer, DateTime endTimer)
    
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);
        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);
        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();
        返回间隔秒数(不算差的分钟和小时等,仅返回秒与秒之间的差)
        //return subTimer.Seconds;
        //返回相差时长(算上分、时的差值,返回相差的总秒数)
        return (int)subTimer.TotalSeconds;
    
    /// <summary>
    /// 获取两个时间的相差多少分钟
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubMinutes(DateTime startTimer, DateTime endTimer)
    
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);
        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);
        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();        
        返回相差时长(仅返回相差的分钟数)
        //return subTimer.Minutes;
        //返回相差时长(仅返回相差的总分钟数)
        return (int)subTimer.TotalMinutes;
    
    /// <summary>
    /// 获取两个时间的相差多少小时
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubHours(DateTime startTimer, DateTime endTimer)
    
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);
        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);
        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();
        返回相差时长(仅返回相差的小时)
        //return subTimer.Hours;
		//返回相差时长(返回相差的总小时数)
        return (int)subTimer.TotalHours;
    
    /// <summary>
    /// 获取两个时间的相差多少天
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubDays(DateTime startTimer, DateTime endTimer)
    
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);
        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);
        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();
        返回相差时长(仅返回相差的天数)
        //return subTimer.Days;
		//返回相差时长(返回相差的总天数)
		return (int)subTimer.TotalDays;
    

以上是关于unity工具类篇 时间间隔帮助类(天时分秒) 下篇的主要内容,如果未能解决你的问题,请参考以下文章

unity工具类篇 时间间隔帮助类(分秒)

unity工具类篇 时间间隔帮助类(分秒) 上篇

unity工具类篇 unity获取本地 / 网络时间

unity工具类篇 unity获取本地 / 网络时间

unity工具类篇 unity 计时器

unity工具类篇 unity 计时器