Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में दो तारीखों के बीच अंतर निकालना


C# में दो DateTime मानों के बीच अंतर निकालने के लिए Subtract() मेथड या घटाव ऑपरेटर (-) का उपयोग किया जाता है, जो एक TimeSpan ऑब्जेक्ट लौटाता है।

उदाहरण

using System;

public class Demo
{
    public static void Main()
    {
        // दो तारीखें सेट करें
        DateTime date1 = new DateTime(2018, 8, 27);
        DateTime date2 = new DateTime(2018, 8, 28);
        
        // अंतर निकालें (TimeSpan लौटाता है)
        TimeSpan difference = date2.Subtract(date1);
        // या सरलता से:
        // TimeSpan difference = date2 - date1;
        
        Console.WriteLine($"पहली तारीख: {date1:d}");
        Console.WriteLine($"दूसरी तारीख: {date2:d}");
        Console.WriteLine();
        
        // TimeSpan प्रॉपर्टीज
        Console.WriteLine("TimeSpan विवरण:");
        Console.WriteLine($"  कुल दिन: {difference.TotalDays}");
        Console.WriteLine($"  कुल घंटे: {difference.TotalHours}");
        Console.WriteLine($"  कुल मिनट: {difference.TotalMinutes}");
        Console.WriteLine($"  कुल सेकंड: {difference.TotalSeconds}");
        Console.WriteLine($"  कुल मिलीसेकंड: {difference.TotalMilliseconds}");
        Console.WriteLine();
        
        // घटक प्रॉपर्टीज (केवल उस घटक का मान)
        Console.WriteLine("घटक प्रॉपर्टीज:");
        Console.WriteLine($"  दिन: {difference.Days}");
        Console.WriteLine($"  घंटे: {difference.Hours}");
        Console.WriteLine($"  मिनट: {difference.Minutes}");
        Console.WriteLine($"  सेकंड: {difference.Seconds}");
        Console.WriteLine($"  मिलीसेकंड: {difference.Milliseconds}");
    }
}

आउटपुट

पहली तारीख: 8/27/2018
दूसरी तारीख: 8/28/2018

TimeSpan विवरण:
  कुल दिन: 1
  कुल घंटे: 24
  कुल मिनट: 1440
  कुल सेकंड: 86400
  कुल मिलीसेकंड: 86400000

घटक प्रॉपर्टीज:
  दिन: 1
  घंटे: 0
  मिनट: 0
  सेकंड: 0
  मिलीसेकंड: 0

TimeSpan प्रॉपर्टीज: TotalX बनाम X

प्रॉपर्टीविवरणउदाहरण (1.5 दिन के लिए)
TotalDaysकुल दिन (दशमलव सहित)1.5
Daysकेवल दिन घटक (0-365)1
TotalHoursकुल घंटे36
Hoursकेवल घंटे घटक (0-23)12

व्यावहारिक उदाहरण

using System;

public class Demo
{
    public static void Main()
    {
        DateTime birthDate = new DateTime(1990, 5, 15);
        DateTime today = DateTime.Today;
        
        TimeSpan age = today - birthDate;
        
        Console.WriteLine($"जन्म तारीख: {birthDate:d}");
        Console.WriteLine($"आज: {today:d}");
        Console.WriteLine($"आयु: {age.Days} दिन");
        Console.WriteLine($"आयु (वर्ष में): {age.Days / 365.25:F1} वर्ष");
        
        // दो DateTime के बीच अवधि की गणना
        DateTime start = new DateTime(2024, 1, 1, 9, 0, 0);  // 9:00 AM
        DateTime end = new DateTime(2024, 1, 1, 17, 30, 0);  // 5:30 PM
        
        TimeSpan workDuration = end - start;
        Console.WriteLine($"\nकार्य अवधि: {workDuration.Hours} घंटे {workDuration.Minutes} मिनट");
        
        // ऋणात्मक TimeSpan (यदि पहली तारीख बाद की है)
        TimeSpan negative = date1 - date2;
        Console.WriteLine($"\nऋणात्मक अंतर: {negative.TotalDays} दिन");
    }
}

आउटपुट

जन्म तारीख: 5/15/1990
आज: 1/15/2024
आयु: 12300 दिन
आयु (वर्ष में): 33.7 वर्ष

कार्य अवधि: 8 घंटे 30 मिनट

ऋणात्मक अंतर: -1 दिन

महत्वपूर्ण बिंदु

  • TimeSpan एक अवधि (duration) दर्शाता है, समय का बिंदु नहीं
  • TotalDays आदि double लौटाते हैं, Days आदि int लौटाते हैं
  • घटाव का क्रम मायने रखता है: later - earlier = धनात्मक, earlier - later = ऋणात्मक
  • DateTime.Subtract() और - ऑपरेटर समान काम करते हैं
  • समय क्षेत्र (timezone) का ध्यान रखें - DateTime.Kind प्रॉपर्टी जांचें
  1. Android में दो तिथियों के बीच का अंतर कैसे प्राप्त करें? Android में दो तिथियों के बीच का अंतर कैसे प्राप्त करें?

    Android में दो तिथियों के बीच दिनों का अंतर निकालने का गाइड यह ट्यूटोरियल दिखाता है कि कैसे SimpleDateFormat और Date क्लास का उपयोग करके दो तिथि स्ट्रिंग्स के बीच दिनों का अंतर निकाला जाए। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनकर नया प्रोजेक्ट बनाएं। चरण 2: लेआउट फ़ाइ

  1. - C# में दो सूचियों के बीच अंतर निकालने का प्रोग्राम

    दो सूचियों के बीच अंतर निकालने के लिए, पहले C# में दो सूचियाँ सेट करें: // पहली सूची List list1 = new List(); list1.Add(A); list1.Add(B); list1.Add(C); list1.Add(D); // दूसरी सूची List list2 = new List(); list2.Add(C); list2.Add(D); foreach(string value in list2) { Console.WriteLine(value); }

  1. - दो सूचियों के बीच अंतर सूचीबद्ध करने का पायथन प्रोग्राम

    समस्या विवरण इस समस्या में दो सूचियां दी गई हैं। हमारा कार्य दो सूचियों के बीच अंतर प्रदर्शित करना है। पायथन set() विधि प्रदान करता है। हम यहां इस विधि का उपयोग करते हैं। एक सेट बिना डुप्लिकेट तत्वों का एक अनऑर्डर्ड संग्रह है। सेट ऑब्जेक्ट यूनियन, इंटरसेक्शन, डिफरेंस और सिमेट्रिक डिफरेंस जैसे गणितीय