import java.text.SimpleDateFormat;
import java.util.Date;
public class DateExample {
public static SimpleDateFormat TIMEZONE_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z");
private static final SimpleDateFormat[] DATE_FORMATS =
{
new SimpleDateFormat("MM/dd/yyyy hh:mm:ss aa"),
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"),
new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy"),
TIMEZONE_DATE_FORMAT,
};
public static void main(String[] args){
for(SimpleDateFormat format : DATE_FORMATS){
try {
Date date = format.parse("1377154948450");
System.out.println("Date: "+ date.toString());
} catch (Exception e) {e.printStackTrace();}
}
}
}
现在解析方法中的字符串值是从方法调用中获取的值,我无法更改它。运行此代码时出现异常
java.text.ParseException: Unparseable date: "1377154948450"
at java.text.DateFormat.parse(DateFormat.java:337)
最佳答案
抛出异常是因为没有任何格式与字符串匹配。
你可以试试
Date date = new Date(Long.parseLong("1377154948450"));
关于java - 通过 SimpleDateFormat .parse() 解析字符串值时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18461453/