我想转换:Wed Apr 06 09:37:00 GMT + 03:00 2016至02/02/2012。 我尝试了什么
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
Date date = sdf.parse(mydate);
和
String mydate = "Wed Apr 06 09:37:00 GMT+03:00 2016";
SimpleDateFormat src = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzzz yyyy");
SimpleDateFormat dest = new SimpleDateFormat("dd/MM/yyyy");
Date date = null;
try {
date = src.parse(mydate);
} catch (ParseException e) {
Log.d("deneme",e.getMessage());
}
String result = dest.format(date);
但它给出错误无法解释的日期:" Wed Apr 06 09:37:00 GMT + 03:00 2016" (在偏移0处)任何想法我怎么解析它?
答案 0 :(得分:0)
我认为您正在尝试格式化英语区域设置日期,但您的系统区域设置不是英语。因此,当您创建SimpleDateFormat
对象时,请指定Locale
明确。
试试这段代码,
String mydate = "Wed Apr 06 09:37:00 GMT+03:00 2016";
SimpleDateFormat src = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzzz yyyy", Locale.ENGLISH);
SimpleDateFormat dest = new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH);
Date date = null;
try {
date = src.parse(mydate);
} catch (ParseException e) {
Log.d("Exception",e.getMessage());
}
String result = dest.format(date);
Log.d("result", result);