java中的日期类型数据处理以及格式转换

java中日期类型数据的处理

java小白一个,最近项目中用到了日期相关数据的处理,所以在此做一个简单的小总结,自己在回顾一下基础。
常用到的日期类有

java.util.Calendar
java.util.GregorianCalendar
java.util.TimeZone
java.text.DateFormat
java.text.SimpleDateFormat
java.sql.Date
java.sql.Time
java.sql.Timestamp

格式转换

Date

Date类型转String类型

//yyyy-MM-dd HH:mm:ss表示24时间进制 
SimpleDateFormat sDateFormat=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");  
String date=sDateFormat.format(new Date()); 
//注:MySQL数据库中date和datetime数据类型可接收日期格式数据,
若通过String类型插入数据库,需要在日期字符串上加上标即'1970-01-01 01:01:01' 

String类型转Date

String dStr ="2001.12.12-08:23:21";  
Date d = null;  
SimpleDateFormat sdf = newSimpleDateFormat("yyyy.MM.dd-HH:mm:ss");  
    try {  
      d = sdf.parse(dStr);  
    } catch (ParseException pe) {  
      System.out.println(pe.getMessage());  
    }  
 System.out.println(d.toLocaleString());//返回当前区域设置的默认格式表示的日期 

毫秒数据转化为日期格式

//以1429339937748为毫秒数实例化一个Date对象 
Date date =new Date(1429339937748l); SimpleDateFormat sdf=newSimpleDateFormat("yyyy-MM-dd"); 
//设置转化格式 
String time=sdf.format(date);//将Date对象转化为yyyy-MM-dd形式的字符串 
System.out.println(time);//输出字符串 

输出结果为
java中的日期类型数据处理以及格式转换_第1张图片

Calendar

caledar类功能很强大,实现方式也比较复杂;

//首先获取一个实例化的对象,由于Calendar是抽象类,因此不能new 
Calendar calendar =Calendar.getInstance(); 
//获取年份 
int year = calendar.get(Calendar.YEAR); 
//获取月份(月份的话需要在原来的基础上+1) 
int month = calendar.get(Calendar.MONTH)+ 1; 
//小时--24小时 
int hour = calendar.get(Calendar.HOUR_OF_DAY); 
//小时--12小时 
int hour1= calendar.get(Calendar.HOUR); 
//分钟 
int minute = calendar get(Calendar.MINUTE); 
//秒 
int second = calendar.get(Calendar.SECOND); 
//星期几 
int day = calendar.get(Calendar.DAY_OF_WEEK);
//过去一小时,其他的时间加减处理同理
calendar.add(Calendar.MINUTES, -1);

你可能感兴趣的:(java)