Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เมธอด TimeSpan.FromMilliseconds() ใน C# พร้อมตัวอย่าง


เมธอด TimeSpan.FromMilliseconds() ใน C# ใช้สำหรับสร้าง TimeSpan จากจำนวนมิลลิวินาทีที่ระบุ (double) — เหมาะสำหรับการแปลงระยะเวลาจากมิลลิวินาที

ไวยากรณ์ (Syntax)

public static TimeSpan FromMilliseconds (double val);
  • val — จำนวนมิลลิวินาที (อาจเป็นทศนิยมได้)

ตัวอย่างที่ 1: สร้าง TimeSpan จากแหล่งต่างๆ

using System;

public class Demo
{
    public static void Main()
    {
        TimeSpan span1 = TimeSpan.FromDays(15);
        TimeSpan span2 = new TimeSpan(5, 15, 30);      // 5 ชม. 15 น. 30 วิ.
        TimeSpan span3 = TimeSpan.FromHours(5);
        TimeSpan span4 = TimeSpan.FromMilliseconds(876876876.1);

        Console.WriteLine("TimeSpan1 = " + span1);
        Console.WriteLine("TimeSpan2 = " + span2);
        Console.WriteLine("TimeSpan3 = " + span3);
        Console.WriteLine("TimeSpan4 = " + span4);

        Console.WriteLine("Result (Comparison of span1 and span2) = " + TimeSpan.Compare(span1, span2));
        Console.WriteLine("Result (Comparison of span2 and span3) = " + TimeSpan.Compare(span2, span3));
        Console.WriteLine("Result (Comparison of span1 and span3) = " + TimeSpan.Compare(span1, span3));
        Console.WriteLine("Result (Comparison of span3 and span4) = " + TimeSpan.Compare(span3, span4));
    }
}

ผลลัพธ์

TimeSpan1 = 15.00:00:00
TimeSpan2 = 05:15:30
TimeSpan3 = 05:00:00
TimeSpan4 = 10.03:34:36.8760000
Result (Comparison of span1 and span2) = 1
Result (Comparison of span2 and span3) = 1
Result (Comparison of span1 and span3) = 1
Result (Comparison of span3 and span4) = -1

ตัวอย่างที่ 2: มิลลิวินาทีเล็กและใหญ่

using System;

public class Demo
{
    public static void Main()
    {
        TimeSpan span1 = TimeSpan.FromHours(0.78787);
        TimeSpan span2 = new TimeSpan(10, 30, 40);
        TimeSpan span3 = TimeSpan.FromHours(5);
        TimeSpan span4 = TimeSpan.FromMilliseconds(1);

        Console.WriteLine("TimeSpan1 = " + span1);
        Console.WriteLine("TimeSpan2 = " + span2);
        Console.WriteLine("TimeSpan3 = " + span3);
        Console.WriteLine("TimeSpan4 = " + span4);

        Console.WriteLine("Result (Comparison of span1 and span2) = " + TimeSpan.Compare(span1, span2));
        Console.WriteLine("Result (Comparison of span2 and span3) = " + TimeSpan.Compare(span2, span3));
        Console.WriteLine("Result (Comparison of span1 and span3) = " + TimeSpan.Compare(span1, span3));
        Console.WriteLine("Result (Comparison of span3 and span4) = " + TimeSpan.Compare(span3, span4));
    }
}

ผลลัพธ์

TimeSpan1 = 00:47:16.3320000
TimeSpan2 = 10:30:40
TimeSpan3 = 05:00:00
TimeSpan4 = 00:00:00.0010000
Result (Comparison of span1 and span2) = -1
Result (Comparison of span2 and span3) = 1
Result (Comparison of span1 and span3) = -1
Result (Comparison of span3 and span4) = 1

เมธอด FromXxx อื่นๆ ของ TimeSpan

เมธอดคำอธิบาย
FromDays(double)จากวัน
FromHours(double)จากชั่วโมง
FromMinutes(double)จากนาที
FromSeconds(double)จากวินาที
FromMilliseconds(double)จากมิลลิวินาที
FromTicks(long)จากทิก (100 นาโนวินาที)

ข้อสังเกต

  • FromMilliseconds รับ double — รองรับเศษมิลลิวินาที (เช่น 1.5 ms)
  • ค่าลบจะสร้าง TimeSpan ลบ (ระยะเวลาย้อนหลัง)
  • ค่าที่ใหญ่เกินช่วงของ TimeSpan (ประมาณ ±10,675,199 วัน) จะโยน OverflowException
  • TimeSpan.Compare(a, b) คืน -1, 0, 1 เหมือน CompareTo
  • ใช้ TotalMilliseconds property เพื่อแปลงกลับเป็นมิลลิวินาทีทั้งหมด