Ich versuche, Zeichenfolge in Datum Asynctask durch Parsen JSON String zu konvertieren. Ich verwies auf diesen Link: How to convert "Mon Jun 18 00:00:00 IST 2012" to 18/06/2012?Konvertieren Zeichenfolge in Datum mit IST
//String dateStr = "Mon Jun 18 00:00:00 IST 2012";
changedDate = jsonObjectMain.getString("date");
DateFormat formatter = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
Date date = (Date)formatter.parse(changedDate);
System.out.println(date);
Calendar cal = Calendar.getInstance();
cal.setTime(date);
String formatedDate = cal.get(Calendar.DATE) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + cal.get(Calendar.YEAR);
System.out.println("formatedDate : " + formatedDate);
Wenn ich diesen Code in Android Studio laufen, es gibt mir unter Ausnahme:
04-14 12: 35: 53,363 22.963-22.963/com .trial W/System.err: java.text.ParseException: Ungültiges Datum: "Mo Jun 18 00:00:00 IST 2012" (bei Offset 20) 04-14 12: 35: 53.367 22963-22963/com. Versuch W/System.err: bei java.text.DateFormat.parse (DateFormat.java:579) 04-14 12: 35: 5 3.367 22963-22963/com.trial W/System.err: um com.trial.Activity.StartActivity.onClick (StartActivity.java:124) 04-14 12: 35: 53,367 22963-22963/com.trial W/System.err: um android.view.View.performClick (View.java:5210) 04-14 12: 35: 53,367 22963-22963/com.trial W/System.err: um android.view.View $ PerformClick.run (View.java:21183) 04-14 12: 35: 53.367 22963-22963/com.trial W/System.err: um android.os.Handler.handleCallback (Handler.java:739) 04- 14 12: 35: 53.367 22963-22963/com.trial W/System.err: um android.os.Handler.dispatchMessage (Handler.java:95) 04-14 12: 35: 53.367 22963-22963/com .trial W/System.err: um android.os.Looper.loop (Looper.java:148) 04-14 12: 35: 53.367 22963-22963/com.trial W/System.err: unter android.app.ActivityThread.main (ActivityThread.java:5438) 04-14 12: 35: 53.367 22963-22963 /com.trial W/System.err: um java.lang.reflect.Method.invoke (native Methode) 04-14 12: 35: 53.367 22963-22963/com.trialW/System.err: um com. android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:762) 04-14 12: 35: 53.367 22963-22963/com.trial W/System.err: um com.android.internal.os. ZygoteInit.main (ZygoteInit.java:652)
Aber wenn ich laufen gleichen Code in eclipse durch das Erstellen eines einfachen Programms, läuft es sehr gut.
Ich wurde gefragt, ich weiß nicht, warum ist das passiert. Also, ich habe den gleichen Code in einer anderen Aktivität auf Knopf klicken, aber nicht funktioniert.
Vielen Dank. Jede Hilfe wird geschätzt.
Convert IST Saite ist ziemlich schwierig. Ich glaube, dass der Fehler, den Sie bekommen, wegen des 'IST' ist. Darf ich wissen, ob die Zeitzone IST oder dynamisch ist? –
Ich bekomme String von JSON mit diesem Format "Mon Jun 18 00:00:00 IST 2012". Also bin ich mir nicht sicher, ob die Zeitzone fest ist oder nicht. –
Wenn Sie können, bleiben Sie weg von drei Buchstaben Zeitzonenabkürzungen. IST kann India Standard Time, Irish Standard Time oder Israel Standard Time bedeuten. Besser zu verwenden zum Beispiel "Asien/Kolkata", "Europa/Dublin" oder "Asien/Tel_Aviv". –