在项目中遇到过系统有多语言应用的环境,当系统语言设置为阿拉伯语等其他部分语言的时候,使用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
参考链接: