您的位置:首页 > 其它

多语言环境下,使用SimpleDateFormat格式化时间字符串的时候,不能正确显示阿拉伯数字

2015-09-18 15:06 489 查看
在项目中遇到过系统有多语言应用的环境,当系统语言设置为阿拉伯语等其他部分语言的时候,使用SimpleDateFormat格式化时间即:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now=new Date();
System.out.println(sdf .format(now));

这时候得到的字符串显示为:٢٠١٥-٠٩-١٨ ٠٧:٠٣:٤٩
这个明显不是我想要的结果,查阅资料发现,SimpleDateFormat有一个构造函数是带Locale参数的,于是在构造函数中添加一个Locale参数:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",Locale.CHINA);指定一下语言环境,这样得到的字符串就为:2015-09-18
07:10:45

参考链接:

SimpleDateFormat语言环境

使用SimpleDateFormat顺利解析日期
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: