我试图通过解析json字符串来将字符串转换为日期Asynctask。我提到这个链接: How to convert "Mon Jun 18 00:00:00 IST 2012" to 18/06/2012?将字符串转换为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);
当我运行在Android的工作室这个代码,它给了我下面的例外:
一十二月4日至14日:35:53.363 22963-22963/COM .trial W/System.err: java.text.ParseException:Unparseable date:“Mon Jun 18 00:00:00 IST 2012”(at offset 20)04-14 12:35:53.367 22963-22963/com。试用 W/System.err:在java.text.DateFormat.parse(DateFormat.java:579) 04-14 12:35:5 3.367 22963-22963/com.trial W/System.err:at com.trial.Activity.StartActivity.onClick(StartActivity.java:124) 04-14 12:35:53.367 22963-22963/com.trial W/System.err:at android.view.View.performClick(View.java:5210)04-14 12:35:53.367 22963-22963/com.trial W/System.err:at android.view.View $ PerformClick.run(View.java:21183)04-14 12:35:53.367 22963-22963/com.trial W/System.err:at android.os.Handler.handleCallback(Handler.java:739)04- 14 12:35:53.367 22963-22963/com.trial W/System.err:at android.os.Handler.dispatchMessage(Handler.java:95)04-14 12:35:53.367 22963-22963/com .trial W/System.err:在 android.os.Looper.loop(Looper.java:148) 04-14 12:35:53.367 22963-22963/com.trial W/System.err:at android.app.ActivityThread.main(ActivityThread.java:5438)04-14 12:35:53.367 22963-22963 /com.trial W/System.err: java.lang.reflect.Method.invoke(Native Method)04-14 12:35:53.367 22963-22963/com.trialW/System.err:at com。 android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:762) 04-14 12:35:53.367 22963-22963/com.trial W/System.err:at com.android.internal.os。 ZygoteInit.main(ZygoteInit.java:652)
但是,当我在蚀运行相同的代码通过创建简单的程序,它运行得非常好。
我很想知道,我不知道,为什么会发生这种情况。 所以,我在另一个按钮点击活动检查相同的代码,但没有工作。
谢谢。任何帮助将不胜感激。
转换IST字符串是相当棘手。我相信你得到的错误是因为'IST'。我可否知道该时区是修复IST还是动态? –
我从这个合成器获得json的字符串“Mon Jun 18 00:00:00 IST 2012”。所以我不确定时区是否修复。 –
如果可以,请远离三个字母的时区缩写。 IST可能意味着印度标准时间,爱尔兰标准时间或以色列标准时间。更好地使用“亚洲/加尔各答”,“欧洲/都柏林”或“亚洲/ Tel_Aviv”。 –