Tulevaisuuden tai menneisyyden päivämäärän laskeminen

Dart:
Tulevaisuuden tai menneisyyden päivämäärän laskeminen

Miten:

Dart tarjoaa vankkaa tukea päivämäärämanipulaatiolle DateTime-luokkansa kautta. Tässä on, miten voit laskea tulevaisuuden tai menneisyyden päivämääriä käyttäen natiivia Dartia, ilman kolmansien osapuolien kirjastoja.

Tulevaisuuden päivämäärän laskeminen

Tulevaisuuden päivämäärän laskemiseksi luot DateTime-objektin ja käytät add-metodia halutulla kestolla.

DateTime today = DateTime.now();
Duration tenDays = Duration(days: 10);
DateTime futureDate = today.add(tenDays);

print(futureDate); // Tuloste: 2023-04-21 14:22:35.123456 (esimerkkituloste, riippuu nykyisestä päivämäärästä ja ajasta)

Menneisyyden päivämäärän laskeminen

Menneisyyden päivämäärän laskemiseksi käytät subtract-metodia DateTime-objektille tarvittavalla kestolla.

DateTime today = DateTime.now();
Duration fifteenDaysAgo = Duration(days: 15);
DateTime pastDate = today.subtract(fifteenDaysAgo);

print(pastDate); // Tuloste: 2023-03-27 14:22:35.123456 (esimerkkituloste, riippuu nykyisestä päivämäärästä ja ajasta)

Kolmansien osapuolien kirjastojen käyttäminen

Vaikka Dartin natiivit valmiudet päivämäärämanipulaatioon ovatkin tehokkaita, saatat tarvita tarkempia toimintoja, kuten päivämäärien jäsennystä tai muotoilua helpommin, tai monimutkaisempia laskelmia. Tällaisissa tapauksissa time-paketti voi olla erittäin hyödyllinen.

Lisää ensin time riippuvuuksiisi pubspec.yaml-tiedostossa:

dependencies:
  time: ^2.0.0

Sen jälkeen voit käyttää sitä suorittamaan samankaltaisia laskelmia parannetulla luettavuudella:

import 'package:time/time.dart';

void main() {
  DateTime today = DateTime.now();

  // Tulevaisuuden päivämäärän laskeminen
  DateTime futureDate = today + 10.days;
  print(futureDate); // Tulostemuoto: 2023-04-21 14:22:35.123456

  // Menneisyyden päivämäärän laskeminen
  DateTime pastDate = today - 15.days;
  print(pastDate); // Tulostemuoto: 2023-03-27 14:22:35.123456
}

Nämä esimerkit havainnollistavat perus päivämäärämanipulaatioita Dartissa, mukaan lukien ajan lisääminen ja vähentäminen nykyisestä päivämäärästä, osoittaen kuinka vaivattomasti päivämääriä voidaan hallita Dart-sovelluksissa.