JAVA字符串转日期或日期转字符串
2015-07-23 10:57
337 查看
文章中,用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进
来!
用法: SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );
这一行最重要,它确立了转换的格式,yyyy是完整的公元年,MM是月份,dd是日期,至于HH:mm:ss
就不需要我再解释了吧!
PS:为什么有的格式大写,有的格式小写,那是怕避免混淆,例如MM是月份,mm是分;HH是24小
时制,而hh是12小时制。
1.字符串转日期
2008-07-10 19:20:00 要把它转成日期,可以用 Date date = sdf.parse( " 2008-07-10 19:20:00 " );
2.日期转字符串
假如把今天的日期转成字符串可用 String str = sdf.format(new Date());
这个字符串内容的格式类似2008-07-10 19:20:00。
透过这个API我们便可以随心所欲的将日期转成我们想要的字符串格式,例如希望将日期输出成2008
年7月10日,我们可以这么写:
SimpleDateFormat sdf = new SimpleDateFormat( " yyyy年MM月dd日 " );
String str = sdf.format(new Date());
str便会依照我们设定的格式输出了。
3.部分字段的字符串转时间
例如:SimpleDateFormat format = new SimpleDateFormat("HH:mm");
我们如果只输入部分字段。其他默认字段为1970-01-01 00:00:00
############例子
import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
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;
}
/**
* 字符串转换成日期:部分字段
* @param str
* @return date
*/
public static Date StrToDate_2(String str) {
SimpleDateFormat format = new SimpleDateFormat("HH:mm");
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)));
System.out.println("字符串转日期2:" + ConvertDemo.StrToDate_2("15:21"));
}
}
输出结果:
Lenovo:/tmp$ java ConvertDemo
日期转字符串 :2015-07-23 10:38:40
字符串转日期 :Thu Jul 23 10:38:40 CST 2015
字符串转日期2:Thu Jan 01 15:21:00 CST 1970
PS:这个链接好像更精确一点:---http://www.joda.org/joda-time/
################因为Date不建议用所以增加下列转换,建议使用Calendar#######################
1.Calendar 转化 String
//获取当前时间的具体情况,如年,月,日,week,date,分,秒等
Calendar calendat = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateStr = sdf.format(calendar.getTime());
2.String 转化Calendar
String str="2010-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
3.Date 转化String
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
String dateStr=sdf.format(new Date());
4.String 转化Date
String str="2010-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date birthday = sdf.parse(str);
5.Date 转化Calendar
Calendar calendar = Calendar.getInstance();
calendar.setTime(new java.util.Date());
6.Calendar转化Date
Calendar calendar = Calendar.getInstance();
java.util.Date date =calendar.getTime();
下面有个例子,插入oralce表类型为DATE的数据
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HHmmss");
String date = sdf.format(new Date());
-----------------------------------------
String sql = "Insert into SM_SEND (*****************) " +
"values (*******************************
"',1," + "to_date('" +date+ "','YYYY-MM-DD HH24:MI:SS')" +
"," + "to_date('" +date+ "','YYYY-MM-DD HH24:MI:SS')" +
",0,null,null,null,null,null,null,null)";
来!
用法: SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );
这一行最重要,它确立了转换的格式,yyyy是完整的公元年,MM是月份,dd是日期,至于HH:mm:ss
就不需要我再解释了吧!
PS:为什么有的格式大写,有的格式小写,那是怕避免混淆,例如MM是月份,mm是分;HH是24小
时制,而hh是12小时制。
1.字符串转日期
2008-07-10 19:20:00 要把它转成日期,可以用 Date date = sdf.parse( " 2008-07-10 19:20:00 " );
2.日期转字符串
假如把今天的日期转成字符串可用 String str = sdf.format(new Date());
这个字符串内容的格式类似2008-07-10 19:20:00。
透过这个API我们便可以随心所欲的将日期转成我们想要的字符串格式,例如希望将日期输出成2008
年7月10日,我们可以这么写:
SimpleDateFormat sdf = new SimpleDateFormat( " yyyy年MM月dd日 " );
String str = sdf.format(new Date());
str便会依照我们设定的格式输出了。
3.部分字段的字符串转时间
例如:SimpleDateFormat format = new SimpleDateFormat("HH:mm");
我们如果只输入部分字段。其他默认字段为1970-01-01 00:00:00
############例子
import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
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;
}
/**
* 字符串转换成日期:部分字段
* @param str
* @return date
*/
public static Date StrToDate_2(String str) {
SimpleDateFormat format = new SimpleDateFormat("HH:mm");
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)));
System.out.println("字符串转日期2:" + ConvertDemo.StrToDate_2("15:21"));
}
}
输出结果:
Lenovo:/tmp$ java ConvertDemo
日期转字符串 :2015-07-23 10:38:40
字符串转日期 :Thu Jul 23 10:38:40 CST 2015
字符串转日期2:Thu Jan 01 15:21:00 CST 1970
PS:这个链接好像更精确一点:---http://www.joda.org/joda-time/
################因为Date不建议用所以增加下列转换,建议使用Calendar#######################
1.Calendar 转化 String
//获取当前时间的具体情况,如年,月,日,week,date,分,秒等
Calendar calendat = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateStr = sdf.format(calendar.getTime());
2.String 转化Calendar
String str="2010-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
3.Date 转化String
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
String dateStr=sdf.format(new Date());
4.String 转化Date
String str="2010-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date birthday = sdf.parse(str);
5.Date 转化Calendar
Calendar calendar = Calendar.getInstance();
calendar.setTime(new java.util.Date());
6.Calendar转化Date
Calendar calendar = Calendar.getInstance();
java.util.Date date =calendar.getTime();
下面有个例子,插入oralce表类型为DATE的数据
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HHmmss");
String date = sdf.format(new Date());
-----------------------------------------
String sql = "Insert into SM_SEND (*****************) " +
"values (*******************************
"',1," + "to_date('" +date+ "','YYYY-MM-DD HH24:MI:SS')" +
"," + "to_date('" +date+ "','YYYY-MM-DD HH24:MI:SS')" +
",0,null,null,null,null,null,null,null)";
相关文章推荐
- 配置JAVA的环境变量
- Spring的事务传播属性,数据库的隔离级别
- eclipse 启动不了,提示adt版本过低
- java中final关键字详解
- eclipse android开发中关于XML文件效果即Graphical Layout 显示不出效果
- 《JAVA与模式》之抽象工厂模式
- cxf+spring开发(三)--- 限制固定Ip地址对接口的访问次数
- java获取视频播放时长
- MyEclipse中spring_servlet.xml报异常错误:Referenced file contains error(...)For&n
- 开启struts2自带的开发模式常量
- 开启struts2自带的开发模式常量
- 严重: Exception starting filter struts2 java.lang.reflect.InvocationTargetException - Class: com.opens
- Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目教程
- MyBatis-Spring MVC 整合示例(带源码)
- jsp页面中使用了<%=new java.util.Date()>但是不显示效果
- JAVA之JMS
- [转]maven安装以及eclipse配置maven
- 同一个数据库实例,不同用户下多表创建视图,Hibernate完成ORM映射,Spring整合,后台实现
- java JNI的两种实现方法:javah vs JNI_OnLoad
- Mac查找JDK路径/指定eclipse启动JDK版本