[英]Unable to parse String using Java Date parser
我正在使用以下方法解析日期時間字符串: http : //developer.android.com/reference/java/text/SimpleDateFormat.html,但不知何故我在解析時遇到了運行時錯誤: https : //ideone.com/gpFqwp
有人可以在這里指出我的錯誤嗎?
static String date = "2015-09-17T08:22:49Z";
public static DateFormat inputDatetimeFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
public static DateFormat displayDateFormat = DateFormat.getDateTimeInstance();
public static void main (String[] args) throws java.lang.Exception
{
System.out.println(displayDateFormat.format(inputDatetimeFormatter.parse(date)));
}
將inputDatetimeFormatter
更改為new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
。 然后它將運行正常。
編輯: date
字符串末尾Z
的作用是什么? 您一直想在那里只是一封信嗎?
然后,您必須將inputDatetimeFormatter
更改為上述內容。 如果Z
的用途是時區,那么您的date
字符串是錯誤的(不應包含Z
而是時區,例如-0800
)。
然后它將給出:
static String date = "2015-09-17T08:22:49-0800"; // Replace -0800 by wanted time zone
public static DateFormat inputDatetimeFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ"); // Now you can use Z (instead of 'Z') to indicate that the time zone is following
DateFormat inputDatetimeFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX");
有關Java 7中的SimpleDateFormat,請參見javadoc
或使用
DateFormat inputDatetimeFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
有關Java 6中的SimpleDateFormat,請參見javadoc
這是一個樣本
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.