Генератор времени флаттера: методы генерации, управления и отображения времени

Метод 1: отображение текущего времени

import 'package:intl/intl.dart';
String getCurrentTime() {
  var now = DateTime.now();
  var formatter = DateFormat('HH:mm:ss');
  return formatter.format(now);
}
// Usage
String currentTime = getCurrentTime();
print(currentTime); // Output: 14:30:00

Метод 2: генерирование случайного времени

import 'dart:math';
String generateRandomTime() {
  var random = Random();
  var hour = random.nextInt(24).toString().padLeft(2, '0');
  var minute = random.nextInt(60).toString().padLeft(2, '0');
  var second = random.nextInt(60).toString().padLeft(2, '0');
  return '$hour:$minute:$second';
}
// Usage
String randomTime = generateRandomTime();
print(randomTime); // Output: 09:25:37

Метод 3. Преобразование часовых поясов

import 'package:intl/intl.dart';
String convertTimezone(String time, String fromTimezone, String toTimezone) {
  var formatter = DateFormat('HH:mm:ss');
  formatter.timeZone = fromTimezone;
  var dateTime = formatter.parse(time);
  formatter.timeZone = toTimezone;
  return formatter.format(dateTime);
}
// Usage
String convertedTime = convertTimezone('12:00:00', 'UTC', 'America/New_York');
print(convertedTime); // Output: 07:00:00

Метод 4. Вычисление разницы во времени

import 'package:intl/intl.dart';
String calculateTimeDifference(String startTime, String endTime) {
  var formatter = DateFormat('HH:mm:ss');
  var startDateTime = formatter.parse(startTime);
  var endDateTime = formatter.parse(endTime);
  var difference = endDateTime.difference(startDateTime);
  var hours = difference.inHours;
  var minutes = difference.inMinutes.remainder(60);
  var seconds = difference.inSeconds.remainder(60);
  return '$hours:$minutes:$seconds';
}
// Usage
String timeDifference = calculateTimeDifference('09:00:00', '12:30:00');
print(timeDifference); // Output: 03:30:00

Это всего лишь несколько примеров методов, которые вы можете использовать для генерации времени и управления им во Flutter. Не стесняйтесь изменять их в соответствии с вашими требованиями.