如何获取使用设备区域设置语言格式化的日期和时间?

MBH*_*MBH 1 android locale simpledateformat

我正在尝试使用Date()获取日期和时间,并将其显示在TextView中。是否可以使用设备区域设置对其进行格式化?

例如:

阿拉伯语语言环境设备 ???? 2 \ 2 \ 2015

土耳其语区域设置设备 Çar2 \ 2 \ 2014

英文语言环境设备 2014年2月2日星期三

Rob*_*bin 5

如果要将java.util.Date转换为字符串,则可以使用SimpleDateFormat类。此类的第二个构造函数采用Locale类型的参数。使用Locale.getDefault(),您可以获取设备的默认语言环境,如果未设置或找到该设备,它将为en_Us提供语言环境。

这是一个小样本代码:

public static void main(String [] args){
    DateFormat df = new SimpleDateFormat("yyyy/MMM/dd EE", Locale.getDefault());
    Date today = Calendar.getInstance().getTime();
    String reportDate = df.format(today);
    System.out.println(reportDate);
}
Run Code Online (Sandbox Code Playgroud)

您还可以设置Local专有性,例如Locale.CHINESE,也可以迭代本地数组,这些数组在当前设备上可用(请参阅Locale.getAvailableLocales())。

希望我能为您服务!