Java--日期的使用
Date 类: 最基础的日期时间类,返回一个相对日期的毫秒数。精确到毫秒,但不支持日期的国际化和分时区显示。
Calender类: 相对于Date更加强大的时间类,是抽象类,提供了常规的日期修改功能和国际化支持。
GregorianCalendar类: 提供处理日期的方法,用于计算日期,是Calendar类的子类,有用的是有个判断闰年的方法。
DateFormat类: 可以接受字符串输入 输出,提供了将日期/时间信息进行格式化处理的功能。
SimpleDateFormat类: 功能更强大的日期时间格式化类,自定义格式化日期和时间。
java.util.Locale类: 描述特定的地理、政治、文化上的地区,Locale对象主要封装了“地区”和“语言种类”两方面 .
1.获取当前时间
public String GetCurTime()//获得当前时间
{
Date now=new Date();
return now.getHours()+":"+now.getMinutes()+":"+now.getSeconds();
}
public String GetCurDate()//获得当前日期
{
Calendar cal=Calendar.getInstance();
return cal.get(Calendar.YEAR)+"年"+(cal.get(Calendar.MONTH)+1)+"月"+cal.get(Calendar.DATE)+"日";
}
2.获取一月前时间
calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH, -1);
3.获取一年前时间
calendar = Calendar.getInstance();
calendar.add(Calendar.YEAR, -1);
4.获取相对日期的毫秒数
Calendar calendar = Calendar.getInstance();
long nowTime = calendar.getTime().getTime();
5.转换字符串为日期
String strDate = "2011-08-13";
SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date sDate = sDateFormat.parse(strDate);
6.格式化显示日期型数据
Date dt_in :日期型数据
boolean bShowTimePart_in : 是否显示时间部分
@return String 格式化后的日期格式
*/
public String DoFormatDate(java.util.Date dt_in, boolean bShowTimePart_in) {
if (bShowTimePart_in)
return (new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")).format(dt_in);
else
return (new SimpleDateFormat("yyyy-MM-dd")).format(dt_in);
}
8.国际化,信息通常用于在国际化和本地化程序中的地区、语言相关的方式显示日期、数字或文本信息等
public void testLocale(){
Locale defaultLocale = Locale.getDefault(); //当前机器所在的国家和地区
System.out.println(defaultLocale);
System.out.println(defaultLocale.getLanguage()); //英文宿写的语言名
System.out.println(defaultLocale.getCountry()); //英文宿写的国家名
System.out.println(defaultLocale.getDisplayName()); //语言名(国家名)
System.out.println(defaultLocale.getDisplayLanguage()); //语言名
System.out.println(defaultLocale.getDisplayCountry()); //国家名
System.out.println("--------------------------");
}
DateTime date = new DateTime(new Date(), DateTime.YEAR_TO_DAY);
获取时分秒的方法:getDaysCount
package ceshi; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; public class Ceshi { public static void main(String[] args) throws ParseException {
SimpleDateFormat CeshiFmt0=new SimpleDateFormat("Gyyyy年MM月dd日 HH时mm分ss秒");
SimpleDateFormat CeshiFmt1=new SimpleDateFormat("yyyy/MM/dd HH:mm");
SimpleDateFormat CeshiFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat CeshiFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
SimpleDateFormat CeshiFmt4=new SimpleDateFormat("yyyy/MM/dd E");
SimpleDateFormat CeshiFmt5=new SimpleDateFormat(
"一年中的第 D 天 ,第w个星期 ,一个月中第W个星期 ,k时 z时区");
Date now=new Date();
System.out.println(CeshiFmt0.format(now));
System.out.println(CeshiFmt1.format(now));
System.out.println(CeshiFmt2.format(now));
System.out.println(CeshiFmt3.format(now));
System.out.println(CeshiFmt4.format(now));
System.out.println(CeshiFmt5.format(now));
} } 公元2010年07月27日 09时19分29秒
2010/07/27 09:19
2010-07-27 09:19:29
2010年07月27日 09时19分29秒 星期二
2010/07/27 星期二
一年中的第 208 天 ,第31个星期 ,一个月中第5个星期 ,9时 CST时区
获取两个日期间的所有日期
public static GregorianCalendar[] getBetweenDate(String d1,String d2) throws ParseException
{
Vector<GregorianCalendar> v=new Vector<GregorianCalendar>();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
GregorianCalendar gc1=new GregorianCalendar(),gc2=new GregorianCalendar();
gc1.setTime(sdf.parse(d1));
gc2.setTime(sdf.parse(d2));
do{
GregorianCalendar gc3=(GregorianCalendar)gc1.clone();
v.add(gc3);
gc1.add(Calendar.DAY_OF_MONTH, 1);
}while(!gc1.after(gc2));
return v.toArray(new GregorianCalendar[v.size()]);
} public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
GregorianCalendar[] ga=getBetweenDate("2009-11-29", "2009-12-5");
for(GregorianCalendar e:ga)
{
System.out.println(e.get(Calendar.YEAR)+"年 "+
+(e.get(Calendar.MONTH)+1)+"月 "+
e.get(Calendar.DAY_OF_MONTH)+"号");
}
}
Java--日期的使用的更多相关文章
- [转]Java日期时间使用总结
原文地址:http://lavasoft.blog.51cto.com/62575/52975/ 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中 ...
- java日期操作大全
摘自(http://www.blogjava.net/i369/articles/83483.html) java日期操作 大全 先来一个: 取得指定月份的第一天与取得指定月份的最后一天 http ...
- java日期处理总结
Java日期时间使用总结 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式 ...
- Java日期时间使用总结
一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式都是非常复杂的问题. 在J ...
- Java 日期时间
Java 日期时间 标签 : Java基础 Date java.util.Date对象表示一个精确到毫秒的瞬间; 但由于Date从JDK1.0起就开始存在了,历史悠久,而且功能强大(既包含日期,也包含 ...
- Java日期时间使用(转)
Java日期时间使用总结 转自:http://lavasoft.blog.51cto.com/62575/52975/ 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个 ...
- Java日期的格式String类型GMT,GST换算成日期Date种类
请尊重他人的劳动成果.转载请注明出处:Java日期格式化之将String类型的GMT,GST日期转换成Date类型 http://blog.csdn.net/fengyuzhengfan/articl ...
- java日期格式大全 format SimpleDateFormat(转)
java日期格式大全 format SimpleDateFormat /** * 字符串转换为java.util.Date<br> * 支持格式为 yyyy.MM.dd G ...
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- Java日期格式化方法
首先获取当前系统时间的方法有两种:第一种可以用currentTimeMillis()方法获取,它其实产生的是一个当前的毫秒数,这个毫秒是自1970年1月1日0时起至现在的毫秒数,类型是long 型,可 ...
随机推荐
- 项目管理软件伙伴https://www.huobanyun.cn/
现在项目管理软件市面上很多,但能够完全适合每家公司需求的比较难找,因为众口难调,每家公司都有自己的特殊情况,所以,建议考虑下有比较齐全的基础功能的标准化软件产品,同时又在项目管理开发能力上比较突出. ...
- 修改html很实用的insertAdjacentHTML方法
添加HTML内容与文本内容以前用的是innerHTML与innerText方法, 最近发现还有insertAdjacentHTML和 insertAdjacentText方法, 这两个方法更灵活,可以 ...
- Delphi中的内存对齐 与 Packed关键字
以delphi为例:TTest = recordc1: char;i1: Integer;c2: char;c3: Char;end;这个结构如果用sizeof取其占用的内存大小,是多少呢,是1+4+ ...
- HDU 3802 Ipad,IPhone
http://wutyyzchangde.blog.163.com/blog/static/172226566201132311311374/ #include <cstdio> type ...
- HDU 1498 50 years, 50 colors
题目大意:给你一个 n*n 的矩阵,每个格子上对应着相应颜色的气球,每次你可以选择一行或一列的同种颜色的气球进行踩破,问你在K次这样的操作后,哪些颜色的气球是不可能被踩破完的. 题解:对于每一种颜色建 ...
- NeHe OpenGL lession 4
// lession4.c #include <OpenGL/OpenGL.h> #include <GLUT/GLUT.h> #include <stdio.h> ...
- 深入了解Nginx之Nginx与Python(1)
6 Python和Nginx 6.1 简介FastCGI FastCGI(Fast Common Gateway Interface)是基于CGI上的改进,是CGI的一种演变产物.虽然目的是保持同样的 ...
- javadoc入门
斌斌 (给我写信) 原创博文(http://blog.csdn.net/binbinxyz),转载请注明出处! java凝视 java里面有两种类型的凝视.一种是以"/*"起头,以 ...
- Andorid Binder进程间通信---Binder本地对象,实体对象,引用对象,代理对象的引用计数
本文參考<Android系统源码情景分析>,作者罗升阳. 一.Binder库(libbinder)代码: ~/Android/frameworks/base/libs/binder --- ...
- iOS开发UI 篇—CAlayer层的属性
一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property CGPoint position; 用来设 ...