Dart:
दो तारीखों की तुलना

कैसे:

Dart में, आप DateTime क्लास का उपयोग करके तिथियों की तुलना कर सकते हैं, जो कि सीधी तुलना के लिए isBefore, isAfter, और isAtSameMomentAs जैसे विधियों की पेशकश करता है। इसके अलावा, दो तिथियों के बीच का अंतर difference() विधि का उपयोग करके निर्धारित किया जा सकता है, जो एक Duration ऑब्जेक्ट प्रदान करता है जो दो समय बिंदुओं के बीच की अवधि का विवरण देता है।

यहाँ इन अवधारणाओं को समझाने के लिए एक मूल उदाहरण है:

void main() {
  DateTime eventStart = DateTime(2023, 5, 15);
  DateTime eventEnd = DateTime(2023, 5, 20);
  
  // जांच करना कि एक तिथि दूसरे से पहले है या नहीं
  if (eventStart.isBefore(eventEnd)) {
    print("घटना की शुरुआत की तिथि घटना की समाप्ति की तिथि से पहले है।");
  }

  // जांच करना कि दो तिथियाँ समान हैं या नहीं
  if (!eventStart.isAtSameMomentAs(eventEnd)) {
    print("दोनों तिथियाँ समान नहीं हैं।");
  }
  
  // दो तिथियों के बीच का अंतर गणना करना
  Duration eventDuration = eventEnd.difference(eventStart);
  print("घटना ${eventDuration.inDays} दिनों तक चलती है।");
}

/*
आउटपुट:
घटना की शुरुआत की तिथि घटना की समाप्ति की तिथि से पहले है।
दोनों तिथियाँ समान नहीं हैं।
घटना 5 दिनों तक चलती है।
*/

अधिक उन्नत तिथि परिवर्तनों के लिए, जैसे कि प्रारूप परिवर्तन, आपको intl पैकेज से DateFormat क्लास उपयोगी लग सकती है। नीचे एक उदाहरण दिया गया है जो दिखाता है कैसे इसका उपयोग तिथियों को स्वरूपण करने और तुलना करने के लिए किया जा सकता है:

सबसे पहले, अपने pubspec.yaml में intl पैकेज शामिल करें:

dependencies:
  intl: ^0.17.0

फिर, इसे निम्नलिखित के रूप में उपयोग करें:

import 'package:intl/intl.dart';

void main() {
  DateTime departureDate = DateTime(2023, 5, 15);
  DateTime returnDate = DateTime.parse('2023-05-20');

  // तिथियों को स्वरूपित करना
  var formatter = DateFormat('yyyy-MM-dd');
  print("प्रस्थान: ${formatter.format(departureDate)}");
  print("वापसी: ${formatter.format(returnDate)}");

  // स्वरूपित स्ट्रिंग्स का उपयोग करके तुलना करना
  if (formatter.format(departureDate) == formatter.format(returnDate)) {
    print("प्रस्थान और वापसी की तिथियाँ समान हैं।");
  } else {
    print("प्रस्थान और वापसी की तिथियाँ अलग हैं।");
  }
}

/*
आउटपुट:
प्रस्थान: 2023-05-15
वापसी: 2023-05-20
प्रस्थान और वापसी की तिथियाँ अलग हैं।
*/

यह उदाहरण दिखाता है कि कैसे दो DateTime ऑब्जेक्ट्स की सीधी तुलना की जा सकती है और समय जैसे विशिष्ट घटकों को नजरअंदाज करते हुए तुलना के लिए स्वरूपित स्ट्रिंग्स का उपयोग किया जा सकता �