错误的 flutter DateFormat 结果,带有
DateTime.fromMillisecondsSinceEpoch(0);
DateFormat('HH:mm:ss.SSS').format(DateTime.fromMillisecondsSinceEpoch(0))
返回
02:00:00.000
,但不是应该返回00:00:00.000
吗?
要获得 00:00:00.000,您需要强制 DateTime 采用 UTC 而不是您当地的时区。
解决方案: 您可以使用 toUtc() 显式指定时区,以确保以 UTC 格式设置时间格式:
import 'package:intl/intl.dart';
void main() {
DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(0).toUtc();
String formattedTime = DateFormat('HH:mm:ss.SSS').format(dateTime);
print(formattedTime); // Output: 00:00:00.000
}