Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何在Flatter中获取时区名称?_Flutter_Dart - Fatal编程技术网

Flutter 如何在Flatter中获取时区名称?

Flutter 如何在Flatter中获取时区名称?,flutter,dart,Flutter,Dart,如何在Flatter/Dart中获取当前时区名称Asia/Calcutta DateTime.now().timeZoneName获取字符串IST DateTime.now().timeZoneOffset获取持续时间5:30:00.000000 Intl.DateTimeFormat().resolvedOptions().timeZone以JavaScript提供所需的结果Asia/Calcutta 感谢您的帮助。谢谢。查看该软件包,它易于安装和使用 导入包 import'包:flatter

如何在Flatter/Dart中获取当前时区名称
Asia/Calcutta

DateTime.now().timeZoneName
获取字符串
IST

DateTime.now().timeZoneOffset
获取持续时间
5:30:00.000000

Intl.DateTimeFormat().resolvedOptions().timeZone
以JavaScript提供所需的结果
Asia/Calcutta

感谢您的帮助。谢谢。

查看该软件包,它易于安装和使用

导入包

import'包:flatter_native_timezone/flatter_native_timezone.dart'

并用作

timezone=wait flatternativetimezone.getLocalTimezone()


我用这种方式将时区固定在颤振中

import 'package:timezone/data/latest.dart' as tz;
import 'package:timezone/timezone.dart' as tz;
static const platform = const MethodChannel('channel NAME');
Future<void> _configureLocalTimeZone() async {
    tz.initializeTimeZones();
    var locations = tz.timeZoneDatabase.locations;
    final locationName = tz.getLocation(locations.keys.first); //Asia/Calcutta
    tz.setLocalLocation(locationName);
  }

IST是时区的标准缩写,+05:30是该时区的偏移量。除此之外,每个时区都可能有大量不同的时区“名称”,您具体想要哪个可能有些随意。例如,对于您的特定时区,Dart如何知道您想要的是“亚洲/加尔各答”、“亚洲/哥伦布”还是“亚洲/加尔各答”@Abion47 javascript如何知道我想要的是“亚洲/加尔各答”还是“亚洲/哥伦布”?我想它要么任意选择,要么获取您的位置数据并做出最佳猜测。我所能告诉你的就是去做,祝你好运。@Abion47我刚刚用Java在本地Android上测试过,我能用
Java.util.TimeZone.getDefault().getID()获取“Asia/Kolkata”。我认为它可能涉及系统的日期时间设置。因此,这是一个严格的过程,就像制作一个
Map
对象一样,它使用时区缩写并任意返回IANA时区语言环境名称。很好的发现。写作做得很好。为了和为了。如果看到Flatter在
DateTime.now()中添加属性以获得此值,那将是非常棒的。
await _configureLocalTimeZone();