java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); String str = formatter.format(date);
DateFormat df = DateFormat.getDateInstance(); String myString = "Tue Oct 18 04:11:56 CST 2005"; try { Date d = df.parse(myString); Calendar c = Calendar.getInstance(); c.setTime(d); String s = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime()); System.out.println(s);
String str = formatter.format(date);
String myString = "Tue Oct 18 04:11:56 CST 2005";
try {
Date d = df.parse(myString);
Calendar c = Calendar.getInstance();
c.setTime(d);
String s = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
System.out.println(s);
} catch (Exception e) {
System.out.println("wrong");
e.printStackTrace();
}
不是把一个"Tue Oct 18 04:11:56 CST 2005"这种格式的转换成Date的代码。
还有,不要用 date = new Date(str)这个方法。
import java.text.DateFormat;
import java.util.Date;
import java.util.Calendar;
import java.text.SimpleDateFormat;
public class StringToDate {
public void StringDate(){
DateFormat df = DateFormat.getDateInstance();
String myString = "Tue Oct 18 04:11:56 CST 2005";
try {
Date d = df.parse(myString);
Calendar c = Calendar.getInstance();
c.setTime(d);
String s = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
System.out.println(s);
} catch (Exception e) {
System.out.println("wrong");
e.printStackTrace();
}
}
public static void main(String[] args) {
StringToDate std = new StringToDate();
std.StringDate(); }}Console显示:
wrong
java.text.ParseException: Unparseable date: "Tue Oct 18 04:11:56 CST 2005"
at java.text.DateFormat.parse(DateFormat.java:335)
at StringToDate.StringDate(StringToDate.java:10)
at StringToDate.main(StringToDate.java:23)
Date dt = sdf.parse("Tue Oct 18 04:11:56 GMT 2005");
try {
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
Date d = sdf.parse(myString);
Calendar c = Calendar.getInstance();
c.setTime(d);
String s = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
System.out.println(s);
} catch (Exception e) {
e.printStackTrace();
}
}
格式如"Tue Oct 18 04:11:56 CST 2005"的String转换成Date,关键代码是
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
Date d = sdf.parse(myString);