Dart:
Obliczanie daty w przyszłości lub przeszłości
Jak to zrobić:
Dart zapewnia solidne wsparcie dla manipulacji datami za pomocą klasy DateTime. Oto jak możesz obliczyć przyszłe lub przeszłe daty przy użyciu natywnego Darta, bez potrzeby korzystania z bibliotek innych firm.
Obliczanie przyszłej daty
Aby obliczyć datę w przyszłości, tworzysz obiekt DateTime i używasz metody add z pożądanym czasem trwania.
DateTime today = DateTime.now();
Duration tenDays = Duration(days: 10);
DateTime futureDate = today.add(tenDays);
print(futureDate); // Wyjście: 2023-04-21 14:22:35.123456 (przykładowe wyjście, zależne od bieżącej daty i godziny)Obliczanie przeszłej daty
Aby obliczyć datę w przeszłości, używasz metody subtract na obiekcie DateTime z koniecznym czasem trwania.
DateTime today = DateTime.now();
Duration fifteenDaysAgo = Duration(days: 15);
DateTime pastDate = today.subtract(fifteenDaysAgo);
print(pastDate); // Wyjście: 2023-03-27 14:22:35.123456 (przykładowe wyjście, zależne od bieżącej daty i godziny)Korzystanie z bibliotek stron trzecich
Chociaż natywne możliwości Darta do manipulacji datami są potężne, może się zdarzyć, że potrzebujesz bardziej szczegółowych operacji, takich jak łatwiejsze parsowanie lub formatowanie dat, lub wykonywanie złożonych obliczeń. W takich przypadkach pakiet time może być bardzo przydatny.
Najpierw dodaj time do zależności w swoim pubspec.yaml:
dependencies:
time: ^2.0.0Następnie możesz go użyć do wykonania podobnych obliczeń z lepszą czytelnością:
import 'package:time/time.dart';
void main() {
DateTime today = DateTime.now();
// Obliczanie przyszłej daty
DateTime futureDate = today + 10.days;
print(futureDate); // Format wyjścia: 2023-04-21 14:22:35.123456
// Obliczanie przeszłej daty
DateTime pastDate = today - 15.days;
print(pastDate); // Format wyjścia: 2023-03-27 14:22:35.123456
}Te przykłady ilustrują podstawowe manipulacje datami w Darcie, w tym dodawanie i odejmowanie czasu do lub od bieżącej daty, demonstrując, jak bez wysiłku daty mogą być zarządzane w aplikacjach Dart.