2018.2.2 java中的Date如何获取 年月日时分秒

package com.util;
 
import java.text.DateFormat;
import java.util.Calendar;
import java.util.Date;
 
 
public class Test {
    public void getTimeByDate(){
        Date date = new Date();
        DateFormat df1 = DateFormat.getDateInstance();//日期格式,精确到日
        System.out.println(df1.format(date));
        DateFormat df2 = DateFormat.getDateTimeInstance();//可以精确到时分秒
        System.out.println(df2.format(date));
        DateFormat df3 = DateFormat.getTimeInstance();//只显示出时分秒
        System.out.println(df3.format(date));
        DateFormat df4 = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL); //显示日期,周,上下午,时间(精确到秒) 
        System.out.println(df4.format(date));  
        DateFormat df5 = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); //显示日期,上下午,时间(精确到秒) 
        System.out.println(df5.format(date));
        DateFormat df6 = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT); //显示日期,上下午,时间(精确到分) 
        System.out.println(df6.format(date));
        DateFormat df7 = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM); //显示日期,时间(精确到分)
        System.out.println(df7.format(date));
    }
    public void getTimeByCalendar(){
        Calendar cal = Calendar.getInstance();
        int year = cal.get(Calendar.YEAR);//获取年份
        int month=cal.get(Calendar.MONTH);//获取月份 
        int day=cal.get(Calendar.DATE);//获取日 
        int hour=cal.get(Calendar.HOUR);//小时 
        int minute=cal.get(Calendar.MINUTE);//分            
        int second=cal.get(Calendar.SECOND);//秒 
        int WeekOfYear = cal.get(Calendar.DAY_OF_WEEK);//一周的第几天
        System.out.println("现在的时间是:公元"+year+"年"+month+"月"+day+"日      "+hour+"时"+minute+"分"+second+"秒       星期"+WeekOfYear);
    }
    public static void main(String[] args) {
        Test t=new Test();
        t.getTimeByDate();
        System.out.println("****************************");
        t.getTimeByCalendar();
    }
}

java中Date与String的相互转化

这种转换要用到java.text.SimpleDateFormat类  
  
字符串转换成日期类型:  
方法1:  
  
也是最简单的方法 Date date=new Date("2008-04-14");  
  
方法2:  
  
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//小写的mm表示的是分钟  
String dstr="2018-2-02";  
java.util.Date date=sdf.parse(dstr);  
  
日期转换成字符串:  
  
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  
java.util.Date date=new java.util.Date();  
String str=sdf.format(date);

程序实例

package test;  
import java.text.DateFormat;  
import java.text.SimpleDateFormat;  
import java.text.ParseException;  
import java.util.Date;  
public class StringOrDate {  
    public static String dateToString(Date date, String type) {  
        String str = null;  
        DateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
        if (type.equals("SHORT")) {  
           
            format = DateFormat.getDateInstance(DateFormat.SHORT);  
            str = format.format(date);  
        } else if (type.equals("MEDIUM")) {  
         
            format = DateFormat.getDateInstance(DateFormat.MEDIUM);  
            str = format.format(date);  
        } else if (type.equals("FULL")) {  
            
            format = DateFormat.getDateInstance(DateFormat.FULL);  
            str = format.format(date);  
        }  
        return str;  
    }  
    public static Date stringToDate(String str) {  
        DateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
        Date date = null;  
        try {  
            // Fri Feb 24 00:00:00 CST 2018  
            date = format.parse(str);   
        } catch (ParseException e) {  
            e.printStackTrace();  
        }  
        // 2018-02-24  
        date = java.sql.Date.valueOf(str);  
                                              
        return date;  
    }  
    public static void main(String[] args) {  
        Date date = new Date();  
        System.out.println(StringOrDate.dateToString(date, "MEDIUM"));  
        String str = "2018-2-24";  
        System.out.println(StringOrDate.stringToDate(str));  
    }  
原文地址:https://www.cnblogs.com/qichunlin/p/8407244.html