2014-11-25 20:28:06|?次阅读|上传:wustguangh【已有?条评论】发表评论
Java编程经常需要进行日期/时间的处理,也会经常需要在日期/时间类型与字符串类型String之间相互转化,Java中Data与String类型的相互转化要用到java.text.SimpleDateFormat类。
方法1:
也是最简单的方法
Date date=new Date("2008-04-14");
这种方法是以字符串作为Date类的构造函数参数构造一个新的Date实例。
方法2:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//小写的mm表示的是分钟 String dstr="2008-4-24"; java.util.Date date=sdf.parse(dstr);
这种方法首先通过指定的格式构造了一个SimpleDateFormat实例,再使用SimpleDateFormat实例的成员方法parse将指定格式的字符串转化成对应的Date实例。
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); java.util.Date date=new java.util.Date(); String str=sdf.format(date);
首先以指定的日期格式构造了一个SimpleDateFormat实例,使用这个对象的成员方法format可以将Date实例转化成对应的字符串。
下面是具体的使用案例:
package test; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.text.ParseException; import java.util.Date; public class StringOrDate { public static String dateToString(Date date, String type) { String str = null; DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); if (type.equals("SHORT")) { // 07-1-18 format = DateFormat.getDateInstance(DateFormat.SHORT); str = format.format(date); } else if (type.equals("MEDIUM")) { // 2007-1-18 format = DateFormat.getDateInstance(DateFormat.MEDIUM); str = format.format(date); } else if (type.equals("FULL")) { // 2007年1月18日 星期四 format = DateFormat.getDateInstance(DateFormat.FULL); str = format.format(date); } return str; } public static Date stringToDate(String str) { DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); Date date = null; try { // Fri Feb 24 00:00:00 CST 2012 date = format.parse(str); } catch (ParseException e) { e.printStackTrace(); } // 2012-02-24 date = java.sql.Date.valueOf(str); return date; } public static void main(String[] args) { Date date = new Date(); System.out.println(StringOrDate.dateToString(date, "MEDIUM")); String str = "2012-2-24"; System.out.println(StringOrDate.stringToDate(str)); } }