这里用到的类是:java.text.SimpleDateFormat
用法: SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );
这一行确立了转换的格式,yyyy是完整的公元年,MM是月份,dd是日期,至于HH:mm:ss自然是时分秒了!
为什么有的格式大写,有的格式小写,那是怕避免混淆,例如MM是月份,mm是分;HH是24小时制,而hh是12小时制。
1.字符串转日期
2013-05-10 19:20:00 要把它转成日期,可以用 Date date = sdf.parse( " 2013-05-10 19:20:00" );
2.日期转字符串
假如把今天的日期转成字符串可用 String str = sdf.format(new Date()); 这个字符串内容的格式类似2013-05-10 19:20:00。
通过这个API我们便可以将日期转成我们想要的字符串格式,例如希望将日期输出成2010年5月10日,我们可以这么写:
SimpleDateFormat sdf = new SimpleDateFormat( " yyyy年MM月dd日 " );
String str = sdf.format(new Date());
str便会依照我们设定的格式输出了.
下面是个简单的例子:
package mypackage1;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ConvertDemo {
/**
* 日期转换成字符串
* @param date
* @return str
*/
public static String DateToStr(Date date){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = format.format(date);
return str;
}
/**
* 字符串转换成日期
* @param str
* @return date
*/
public static Date StrToDate(String str){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
try{
date = format.parse(str);
}catch(ParseException e){
e.printStackTrace();
}
return date;
}
public static void main(String[] args){
Date date = new Date();
System.out.println("日期转字符串:" + ConvertDemo.DateToStr(date));
System.out.println("字符串转日期:" + ConvertDemo.StrToDate(ConvertDemo.DateToStr(date)));
}
}