Flutter — конвертируйте дату и время с разными часовыми поясами

ждая страна имеет разные часовые пояса в зависимости от ее мес Программное обеспечение

Мы все знаем, что каждая страна имеет разные часовые пояса в зависимости от ее местоположения на Земле. Итак, мы обсудим, как изменить дату и время на этот часовой пояс, просто передав два аргумента. Мы преобразуем дату и время в время PST.

Пошаговая реализация

Шаг 1: Мы просто создадим 1 флаттер-проект с помощью команды

Dart

 

flutter create .

В этом проекте мы получим 1 шаблонный код. Мы изменим его с помощью 1 плавающей кнопки. При нажатии на кнопку мы изменим часовой пояс, а также отобразим часовые пояса и дату и время в виджете «Текст».

Шаг 2. Добавьте этот пакет

Dart

flutter pub add instant

Шаг 3. Добавьте каркас и колонну в тело на первом экране.

Dart

import 'package:flutter/material.dart';
import 'package:instant/instant.dart';
// Flutter code sample for [Timezone change template].
void main() {
 
  runApp(const TimezoneChangeTemplate());}
class TimezoneChangeTemplate extends StatelessWidget {
  const TimezoneChangeTemplate({super.key});
  @override
  Widget build(BuildContext context) {
    return  MaterialApp(
      title: "Convert Timezone Template",
      theme: ThemeData(
      primaryColor:Colors.green,
      appBarTheme: const AppBarTheme(backgroundColor: Colors.green)
      ),
    
      home:const MyHomePage(),
    );
  }
}
class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key});
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Timezone Change'),
        
      ),
      body:Column(
        mainAxisAlignment: MainAxisAlignment.center,
        crossAxisAlignment: CrossAxisAlignment.center,
        children:[
])
      );
  }
}

Шаг 4. Добавьте 3 текста: 1 для даты и времени обычного часового пояса, второй для изменения часового пояса в PDT и для изменения часового пояса в PST без переменной даты и времени.

Dart

Column(children:[
  // Normal  Datetime text
  Text("Date Time Before:")
   // Datetime text according to
   // timezone entered or choosen
  ,Text("Date Time After changing in PDT:"),
  // Datetime text according
  // to timezone entered o
,Text("Date Time After changing in PST:"),
])

Шаг 5. Добавьте тексты с переменной даты и времени.

Dart

Column(children:[
  // Normal  Datetime text
  Text("Date Time Before: ${DateTime.now()}"),
  // Datetime text according to PST timezone entered or choosen
  Text("Date Time After changing: ${curDateTimeByZone(zone: "PST")}"),
  // Datetime text according to PDT timezone
  Text("Date Time After changing: ${curDateTimeByZone(zone: "PDT")}"),
])

Вот объяснение этой функции

Имя функции: dateTimeToZone

Он преобразует любую дату и время в дату часового пояса.

  • зона: — напишите стандартный часовой пояс заглавными буквами, например IST,PST.
  • date time: — переменная даты и времени, которую вы хотите изменить на другой часовой пояс.

Образец кода:

Dart

void main() {
    print(dateTimeToZone(zone: "PST", datetime: DateTime(2023)));
}

Имя функции: курдатетимебизоне

Он изменит текущую дату и время на часовой пояс, указанный в зоне.

зона : напишите стандартный часовой пояс заглавными буквами, например IST,PST.

Образец кода:

Dart

// current DateTime in PST timezone
print(curDateTimeByZone(zone: «PST», ));

Имя функции: formatTime

Он форматирует время из объекта времени даты.

  • time:  в качестве значения будет использоваться объект даты и времени.
  • divider: он изменит разделитель между часами, минутами и секундами. По умолчанию:.
  • format: это изменит формат времени. По умолчанию — ЧЧММСС.

Образец кода:

Dart

print(formatTime(time: SanFran,
divider: "/",
format: "HHMM",
is24hr: true
)); // prints format time in PDT

Имя функции: formatDate

Он форматирует дату из объекта даты и времени.

  • time: в качестве значения будет использоваться объект даты и времени.
  • divider: он изменит разделитель между годом, месяцем и датой. По умолчанию — /.
  • format: это изменит формат времени. По умолчанию — ММДДГГГГ.

Образец кода:

Dart

var SanFran =
    curDateTimeByZone(zone: 'PDT');
print(formatDate(date: SanFran,
divider: "/",
format: "DDMMYYYY"
)); // prints format date in PDT

Полный код

Dart

import 'package:flutter/material.dart';
import 'package:instant/instant.dart';
// Flutter code sample for [Timezone change template].
void main() {
  print(dateTimeToZone(zone: "PST", datetime: DateTime(2023)));
   print(curDateTimeByZone(zone: "PST", ));
  var SanFran =
      curDateTimeByZone(zone: 'PDT');
  print(formatTime(time: SanFran,
  divider: "/",
  format: "HHMM",
  is24hr: true
  )); // prints format time in PDT
  
  print(formatDate(date: SanFran,
  divider: "/",
  format: "DDMMYYYY"
  )); // prints format date in PDT
  runApp(const TimezoneChangeTemplate());}
class TimezoneChangeTemplate extends StatelessWidget {
  const TimezoneChangeTemplate({super.key});
  @override
  Widget build(BuildContext context) {
    return  MaterialApp(
      title: "Convert Timezone Template",
      theme: ThemeData(
      primaryColor:Colors.green,
      appBarTheme: const AppBarTheme(backgroundColor: Colors.green)
      ),
    
      home:const MyHomePage(),
    );
  }
}
class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key});
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Timezone Change'),
        
      ),
      body:Column(
        mainAxisAlignment: MainAxisAlignment.center,
        crossAxisAlignment: CrossAxisAlignment.center,
        children:[
Text("Date Time Before: ${DateTime.now()}"),//Normal  Datetime text
Text("Date Time After changing in PST: ${curDateTimeByZone(zone: "PST")}"),
Text("Date Time After changing in PDT: ${curDateTimeByZone(zone: "PDT")}"),
])
      );
  }
}

Выход:

ждая страна имеет разные часовые пояса в зависимости от ее мес

Читайте также:  Самые лучшие бесплатные альтернативы Photoshop
Оцените статью
bestprogrammer.ru
Добавить комментарий