我正在根据设备的区域设置日期格式。如果你有像en_US
、de_DE
等“标准”区域设置,这是没有问题的。但是,如果用户将其电话语言设置为例如englisch(en)和地区,例如德国(DE),区域设置将是以下en_DE
(非标准区域设置)。
如果我现在尝试用这个区域设置格式化日期,它将始终使用US
(我认为是因为语言部分en
):
String date = DateFormat.yMd('en_DE').format(DateTime.now());
print(date); // 7/13/2022
如果我只使用区域部分DE
,这将适用于DE
:
String date = DateFormat.yMd('DE').format(DateTime.now());
print(date); // 13.07.2022
但对于区域设置en_US
,这将不起作用:
String date = DateFormat.yMd('US').format(DateTime.now()); // Invalid argument(s): Invalid locale "US"
如何根据区域设置的区域部分格式化日期?
2条答案
按热度按时间3phpmpom1#
你可以在尝试接球中做到
ssm49v7z2#
对于寻找混合日期格式(如阿拉伯日期格式和英文数字)的人,
也许这能帮