java里如何转换"Wed Apr 11 16:18:42 +0800 2012"这样的日期格式,我希望把它转成long型的毫秒数

如题,请高人指点!

package Serial2;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class DateTest {

public static final String SOURCE = "Wed Apr 11 16:18:42 +0800 2012";

public static void main(String[] args) throws ParseException{

SimpleDateFormat sdf = new SimpleDateFormat(
"EEE MMM dd HH:mm:ss Z yyyy", new Locale("ENGLISH", "CHINA"));

Date myDate = sdf.parse(SOURCE);
System.out.println(myDate);

sdf.applyPattern("EEE MMM dd HH:mm:ss Z yyyy");
System.out.println(sdf.format(myDate));

SimpleDateFormat sdf2 = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss", new Locale("CHINESE", "CHINA"));
System.out.println(sdf2.format(myDate));

sdf2.applyPattern("yyyy年MM月dd日 HH时mm分ss秒");
System.out.println(sdf2.format(myDate));

long miliSeconds = myDate.getTime();
System.out.println("自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象经过的毫秒数为:"+miliSeconds+"毫秒");

/*
Wed Apr 11 16:18:42 CST 2012
Wed Apr 11 16:18:42 +0800 2012
2012-04-11 16:18:42
2012年04月11日 16时18分42秒
自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象经过的毫秒数为:1334132322000毫秒
*/
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-15
Date类里有你想要的方法
另外如果要格式化时间推荐使用SimpleDateformat
第2个回答  2012-04-14
用DateFormat 或者是String类型的直接手动截取转换
第3个回答  2012-04-15
Date date = new Date();
long str = date.getTime();