文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>java中字符串转换成Date类型本地化问题

java中字符串转换成Date类型本地化问题

时间:2010-07-18  来源:vsc

 

   打算把以下字符串“ss = "Fri, 18 Jun 2010 12:25:34 +0000”,转换成Date格式对象,发现老是报错。

原来用的simpledateformate对象这样生成的。

SimpleDateFormat ee = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z")

 一直报错,后来才发现涉及到本地化的问题,也就是你如果在美国并且用英文版本的win7是可以正常运行这段代码的。但在中国是不行的。中国需要用到这样的构造方法。

SimpleDateFormat ee = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z",   new DateFormatSymbols(Locale.US));
                

 Locale.US是关键点哦。

 

当然这个问题还有另外一种解决方法,就是java运行时候,你给jvm指定locale的值。

-Duser.language=en -Duser.country=US

 

完整的测试代码如下:

SimpleDateFormat ee = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z",   new DateFormatSymbols(Locale.US));
                String ss = ee.format(Calendar.getInstance().getTime()   );
                System.out.println(ss);
                
                ss = "Fri, 18 Jun 2010 12:25:34 +0000";
                Date d = ee.parse(ss);  
                System.out.println("date: " + d );
 
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载