java.text.SimpleDateFormat
来源:互联网 发布:浙大中控dcs编程实例 编辑:程序博客网 时间:2024/06/07 17:33
下转载自:http://hi.baidu.com/fengboy_7334/blog/item/e4abb82e0fc6f5544ec2261a.html
使用java.text.SimpleDateFormat类进行文本日期和Date日期的转换
Date类内部既不存储年月日也不存储时分秒,而是存储一个从1970年1月1日0点0分0秒开始的毫秒数,而真正有用的年月日时分秒毫秒都是从这个毫秒数转化而来,这是它不容易被使用的地方,尤其是显示和存储的场合。但Date类的优势在于方便计算和比较。
另一点,日常生活中我们习惯用年月日时分秒这样的文本日期来表示时间,它方便显示和存储,也容易理解,但不容易计算和比较。
综上所述,我们在程序中进行日期时间处理时经常需要在在文本日期和Date类之间进行转换,为此我们需要借助java.text.SimpleDateFormat类来进行处理,下文列举了它的几个常用示例。
1.将Date转化为常见的日期时间字符串
这里我们需要用到java.text.SimpleDateFormat类的format方法,其中可以指定年月日时分秒的模式字符串格式。
Date date = new Date();
Format formatter = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");
System.out.println("转化的时间等于="+formatter.format(date));
其中
yyyy表示四位数的年份
MM表示两位数的月份
dd表示两位数的日期
HH表示两位数的小时
mm表示两位数的分钟
ss表示两位数的秒钟
2.将文本日期转化为Date以方便比较
文本日期的优势在于便于记忆,容易处理,但缺点是不方便比较,这时我们需要借助SimpleDateFormat的parse方法得到Date对象再进行比较,实例如下:
String strDate1="2004年8月9日";
String strDate2="2004年10月5日";
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy年MM月dd日");
java.util.Date date1 = myFormatter.parse(strDate1);
java.util.Date date2 = myFormatter.parse(strDate2);
// Date比较能得出正确结果
if(date2.compareTo(date1)>0){
System.out.println(strDate2+">"+strDate1);
}
// 字符串比较得不出正确结果
if(strDate2.compareTo(strDate1)>0){
System.out.println(strDate2+">"+strDate1);
}
3.将文本日期转化为Date以方便计算
文本日期的另一个大问题是不方便计算,比如计算2008年1月9日的100天后是那一天就不容易,此时我们还是需要把文本日期转化为Date进行计算,再把结果转化为文本日期:
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy年MM月dd日");
java.util.Date date = myFormatter.parse("2008年1月9日");
date.setDate(date.getDate()+100);
Format formatter = new SimpleDateFormat("yyyy年MM月dd日");
// 得到2008年04月18日
System.out.println("100天后为"+formatter.format(date));
- java.text.SimpleDateFormat
- java.text.SimpleDateFormat
- 慎用java.text.SimpleDateFormat类
- 慎用java.text.SimpleDateFormat类
- java.text.SimpleDateFormat的使用
- java.text.SimpleDateFormat的用法
- java时间格式化----java.text.SimpleDateFormat
- java.text Class SimpleDateFormat 格式详细介绍
- java.text.SimpleDateFormat多线程下的问题
- Java中java.text.SimpleDateFormat的日期格式用法
- Java——java.text.SimpleDateFormat的用法
- 关于java.text.SimpleDateFormat的parse()方法存在的坑
- Java----SimpleDateFormat
- Java:SimpleDateFormat
- Java-SimpleDateFormat
- Java Date and Time系列(七)- java.text.SimpleDateFormat介绍
- 关于java String格式 转Date格式 SimpleDateFormat 报java.text.ParseException 错误
- com.ibm.icu.text.SimpleDateFormat 的陷阱
- python+ldap实例
- JNI调试
- 推荐Jquery 40个漂亮的导航菜单设计
- 设计模式
- 【二叉树】
- java.text.SimpleDateFormat
- 好久不曾写博客
- Linux proc/%d/stat文件详解
- 13个JavaScript图表图形绘制插件
- ASP.NET(C#) 最简单的弹出层
- Java大作业要求
- Exception in thread "main" java.lang.NoClassDefFoundError
- [ubuntu] ubuntu下的无人职守安装
- linux socket 学习笔记