其實我wnat找到兩個日期之間的差異,但在CURENT日獲得unparceable日期錯誤 :的Android無法解析的日期錯誤
String act_dateString;
Calendar cal = Calendar.getInstance();
act_dateString = cal.getTime().toLocaleString();
SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy/MM/dd");
Date date_old = null;
try {
date_old = formatter1.parse(act_dateString);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
logcat中顯示:
10-21 00:03:34.904: W/System.err(770): java.text.ParseException: Unparseable date: Oct 21, 2013 12:03:34 AM
10-21 00:03:34.904: W/System.err(770): at java.text.DateFormat.parse(DateFormat.java:645)
10-21 00:03:34.914: W/System.err(770): at com.example.datesdifference.MainActivity.showDifference(MainActivity.java:60)
10-21 00:03:34.914: W/System.err(770): at com.example.datesdifference.MainActivity.onCreate(MainActivity.java:25)
10-21 00:03:34.914: W/System.err(770): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-21 00:03:34.914: W/System.err(770): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-21 00:03:34.914: W/System.err(770): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-21 00:03:34.914: W/System.err(770): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-21 00:03:34.914: W/System.err(770): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-21 00:03:34.914: W/System.err(770): at android.os.Handler.dispatchMessage(Handler.java:99)
10-21 00:03:34.914: W/System.err(770): at android.os.Looper.loop(Looper.java:123)
10-21 00:03:34.914: W/System.err(770): at android.app.ActivityThread.main(ActivityThread.java:4627)
我已經在搜查這谷歌,但無法解決這個問題。任何人都可以幫忙嗎?
爲什麼要將日期轉換爲字符串,然後解析它?編程有一個簡單的規則。只有在您想將其顯示給用戶時,纔將日期轉換爲字符串,將其存儲在僅存儲字符串或將其傳遞給其他應用程序的地方。 – Simon
其實act_dateString是存儲在Sqlite數據庫中並在遊標中返回的日期。 – user2011302