如何在Dart/Flutter中获取当前时间的GMT时间偏移值

q5iwbnjs  于 2022-12-24  发布在  Flutter
关注(0)|答案(5)|浏览(411)

我正在开发一个应用程序,其中我只需要得到格林尼治标准时间偏移时间,即印度+5.30。我如何实现这个 dart 。
变量现在=新DateTime.now();变量时区偏移=现在.时区偏移;
打印(时区偏移);控制台:05:30:00
如何获得+/- GMT时差?

uubf1zoe

uubf1zoe1#

timeZoneOffset为您提供设备时区与UTC之间的差异。
由于UTCGMT是相同的时间,因此timeZoneOffset会给予您所需的+/- GMT offset
在您的问题中,您说印度的偏移量是+5.30,当您打印print(timezoneOffset)时,得到的是05:30:00,这正是您需要的5:30偏移量。

s2j5cfk0

s2j5cfk02#

int minutes = DateTime.now().timeZoneOffset.inMinutes;

print(minutes);

int hours = DateTime.now().timeZoneOffset.inHours;

print(hours);

更多信息请访问:https://api.flutter.dev/flutter/dart-core/DateTime/timeZoneOffset.html

xienkqul

xienkqul3#

可以使用DateTime类。

DateTime.now().timeZoneOffset; // return Duration()

DateTime.now().timeZoneOffset.inHours; // return int

DateTime.now().timeZoneOffset.inMinutes; // return int
s4n0splo

s4n0splo4#

它在 dart /扑希望你能转换

var t = DateTime.now();
t = t.add(const Duration(minutes: 1));
print(t.timeZoneName);
var add = t.hour.toString()+":"+t.minute.toString()+":"+t.second.toString();
        'send_after':'Sept ${t.day} ${t.year} ${add} ${t.timeZoneName}'
lnlaulya

lnlaulya5#

Import it

主省道

import 'package:timezone/data/latest_all.dart';

void main() async { 
  initializeTimeZones(); 
  runApp(const MyApp());
}

主页.dart

import 'package:timezone/standalone.dart';

 Future<void> timeZoneInz() async {
    await initializeTimeZone();
  }

  var detroit = getLocation('Asia/Tashkent');

 @override
  void initState() {
    // TODO: implement initState
    super.initState();
    timeZoneInz(); 
  }

Text(TZDateTime.now(detroit).toString());

有关更多数据库条目名称,请参见Wikipedia list

相关问题