C# 获取当前时间精确到微秒
C# 获取当前时间精确到微秒
C# 中 DateTime 类型默认只能精确到毫秒,无法直接获取微秒级别的时间。但我们可以借助 Stopwatch 类来实现近似的微秒级时间获取。
代码示例:
using System;
using System.Diagnostics;
class Program
{
    static void Main(string[] args)
    {
        Stopwatch stopwatch = new Stopwatch();
        stopwatch.Start();
        DateTime currentTime = DateTime.Now;
        long microseconds = stopwatch.ElapsedTicks / (Stopwatch.Frequency / (1000L * 1000L));
        Console.WriteLine('当前时间: {0}.{1:D6}', currentTime.ToString('yyyy-MM-dd HH:mm:ss'), microseconds);
        stopwatch.Stop();
    }
}
代码说明:
- 使用 
Stopwatch类记录从程序开始到获取当前时间的流逝时间。 - 通过 
stopwatch.ElapsedTicks获取计时周期数。 - 将计时周期数转换为微秒:
stopwatch.ElapsedTicks / (Stopwatch.Frequency / (1000L * 1000L))。 - 最后将日期时间和微秒拼接成最终结果。
 
注意事项:
- 此方法获取的微秒精度并非绝对准确,实际精度受限于系统时钟。
 - Stopwatch 类主要用于性能测试等场景,如果需要更精确的时间戳,建议使用更高精度的时间API。
 
原文地址: https://www.cveoy.top/t/topic/fKCc 著作权归作者所有。请勿转载和采集!