【发布时间】:2017-01-20 03:22:21
【问题描述】:
我刚开始使用 Unity,在我的代码设计器 VS 中工作时不知道如何正确调试脚本。
我在脚本中有这段代码,它不会给我想要的格式:
private string GetTimeElapsedAsString()
{
TimeSpan timeElapsed = DateTime.Now.Subtract(_startTime);
return string.Format("{0:mm} {1:ss} {2:ff}", timeElapsed.TotalMinutes, timeElapsed.TotalSeconds, timeElapsed.TotalMilliseconds);
}
我想要的是这样的:给定格式的“00:07:32”:“mm:ss:ff”
我只想要最简单的方法来切断每个时间单位的 2 位数字以外的所有数字。 有什么想法吗?
问候卡林。
编辑(已进行): 我修改了代码。现在看起来像这样:
private string GetTimeElapsedAsString()
{
TimeSpan timeElapsed = DateTime.Now.Subtract(_startTime);
return string.Format("{0:00}:{1:00}:{2:00}", timeElapsed.Minutes, timeElapsed.Seconds, timeElapsed.Milliseconds);
}
当我去测试我的游戏时,我仍然得到 3 位数字显示毫秒 - 为什么会发生这种情况??
看起来像这样: UI Text component in Unity
编辑: 我找到了上一个问题的解决方案:
return string.Format("{0:00}:{1:00}:{2}", timeElapsed.Minutes, timeElapsed.Seconds, timeElapsed.Milliseconds.ToString().Substring(0,2));
我只需要创建一个 .Substring(0,2) 只包含整数的前 2 个数字。
感谢那些试图提供帮助的人! 看起来不错!:
干杯!
【问题讨论】:
标签: c# unity3d timespan string.format