Android上的Java数据格式转换
我有如下日期字符串:Android上的Java数据格式转换,java,android,date,Java,Android,Date,我有如下日期字符串: Fri, 19 Jul 2013 01:30:22 GMT Thu, 12 Sep 2013 19:19:18 GMT 我想转换成以下格式: 2013/07/19 01:30:22 2013/09/12 19:19:18 首先,我使用以下代码来解析日期: DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z"); Date date = dateFormat.parse("Fr
Fri, 19 Jul 2013 01:30:22 GMT
Thu, 12 Sep 2013 19:19:18 GMT
我想转换成以下格式:
2013/07/19 01:30:22
2013/09/12 19:19:18
首先,我使用以下代码来解析日期:
DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z");
Date date = dateFormat.parse("Fri, 23 Aug 2013 01:10:35 GMT");
但它在第行Date-Date=dateFormat.parse(“Fri,2013年8月23日01:10:35 GMT”)上显示以下异常代码>:
java.text.ParseException: Unparseable date: "Fri, 23 Aug 2013 01:10:35 GMT" (at offset 0)
如何修改它 试试这个
DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.ENGLISH);
String DateStr="Fri, 19 Jul 2013 01:30:22 GMT";
SimpleDateFormat sim=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date d = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z").parse(DateStr);
System.out.println(sim.format(d));
您的默认语言可能不是英语,不接受星期五和八月
DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.ENGLISH);
String DateStr="Fri, 19 Jul 2013 01:30:22 GMT";
SimpleDateFormat sim=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date d = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z").parse(DateStr);
System.out.println(sim.format(d));
你可以这样做
String newDate = date.getYear()+"/"+date.getMonth()+"/"+date.getDay() and ect.
或者您可以编写自己的转换方法
String myConvert(Date date)
{
return date.getYear()+"/"+date.getMonth()+"/"+date.getDay()+ect.
}
尝试使用“格式”:
你可以试试这个
DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z");
Date date = dateFormat.parse("Fri, 23 Aug 2013 01:10:35 GMT");
String formattedString=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").
format(date).toString();
System.out.println(formattedString);
使用此代码
String dateString = "Fri, 19 Jul 2013 01:30:22 GMT";
SimpleDateFormat simple = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date;
try {
date = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z")
.parse(dateString);
Log.e("result", "Date:" + simple.format(date));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
试一试
不推荐使用date.getYear()
、date.getMonth()
等方法。请参阅Java 7文档,我想使用Java.util.CalendarIt's not compile(省略引号)。此外,这与OP的尝试没有什么不同。正确的答案是选择英语语言环境。
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z");
date.parse("Fri, 19 Jul 2013 01:30:22 GMT");
String newDate = simpleDateFormat.format(date);