我正在尝试用 Java 将日期转换为 Unix 时间戳。我的日期示例为:“Fri Jun 05 15:53:07 PDT 2009”
我的代码是:
DateFormat dateFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy");
Date date = dateFormat.parse(dateString );
long unixTime = (long) date.getTime()/1000;
System.out.println("Unix Time: " + unixTime );
double unixFloat = unixTime;
给定的错误是:
Exception in thread "main" java.text.ParseException: Unparseable date: "Fri Jun 05 15:53:07 PDT 2009"
什么是正确的模式?
你需要设置Locale
,某些情况下,如果您未设置区域设置,您可能会遇到此类问题。
Eg:
DateFormat dateFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy"
,Locale.US);
From Java
doc http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html.
SimpleDateFormat 还支持本地化日期和时间模式
字符串。在这些字符串中,上述的模式字母可以是
替换为其他依赖于语言环境的模式字母。
SimpleDateFormat 不处理其他文本的本地化
比模式字母;这取决于班级的客户。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)