1、获取系统日期格式
DateFormat df = DateFormat.getDateInstance(); //格式2014年9月8日
DateFormat df = DateFormat.getDateTimeInstance();//格式2014年9月8日 (下午)06:09:08
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.DEFAULT,DateFormat.SHORT);//格式2014年9月8日 (下午)06:09
DateFormat df = DateFormat.getTimeInstance(); //(下午)06:09:08
DateFormat df = DateFormat.getTimeInstance(DateFormat.SHORT); //(下午)06:09
2、可以指定时区的时间(待):
df=DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.CHINA);
String dateStr=df.format(new Date());
3、判断系统是否24小时制
boolean is24Hour=android.text.format.DateFormat.is24HourFormat(context);
4、输出当前月的月历
该示例的功能是输出当前系统时间所在月的日历,例如当前系统时间是2009年3月10日,则输出2009年3月的日历。
该程序实现的原理为:首先获得该月1号是星期几,然后获得该月的天数,最后使用流程控制实现按照日历的格式进行输出即可。即如果1号是星期一,则打印一个单位的空格,如果1号是星期二,则打印两个单位的空格,依次类推。打印完星期六的日期以后,进行换行。实现该示例的完整代码如下:
import java.util.*;
/**
* 输出当前月的日历
*/
public class DateExample2{
public static void main(String[] args){
//获得当前时间
Calendar c = Calendar.getInstance();
//设置代表的日期为1号
c.set(Calendar.DATE,1);
//获得1号是星期几
int start = c.get(Calendar.DAY_OF_WEEK);
//获得当前月的最大日期数
int maxDay = c.getActualMaximum(Calendar.DATE);
//输出标题
System.out.println("星期日 星期一 星期二 星期三 星期四 星期五 星期六");
5、计算两个日期之间相差的天数
//设置两个日期
//日期:2009年3月11号
Calendar c1 = Calendar.getInstance();
c1.set(2009, 3 - 1, 11);
//日期:2010年4月1号
Calendar c2 = Calendar.getInstance();
c2.set(2010, 4 - 1, 1);
//转换为相对时间
long t1 = c1.getTimeInMillis();
long t2 = c2.getTimeInMillis();
//计算天数
long days = (t2 - t1)/(24 * 60 * 60 * 1000);
System.out.println(days);