我现在尝试向datetime对象添加偏移时间,但它不显示实际时间。这是我在android studio中的flutter项目。
void getTime() async {
Response response = await
get('http://worldtimeapi.org/api/timezone/Asia/Karachi');
Map data = jsonDecode(response.body);
String datetime = data['datetime'];
String offset = data['utc_offset'].substring(1,3);
print(offset);
DateTime now = DateTime.parse(datetime);
now.add(Duration(hours: int.parse('offset')));
print(now);
}
@override
void initState() {
super.initState();
getTime();
}
这是我得到的结果:Screenshot of the output
3条答案
按热度按时间kxeu7u2r1#
你的代码中有两个问题:
1.您应该将
offset
传递给int.parse而不是'offset'
add
是对DateTime
对象的不可变操作。它不会更改DataTime
对象,但会返回一个新对象。试试这个:
pprl5pva2#
我找到解决办法了耶!
92dk7w1h3#
但将帮助您与任何类型的偏移这里是示例代码如下