如何获取精确到毫秒的当前时间以及 日期与时间的相互转化

获取当前的时间,精确到毫秒

System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS") .format(new Date() ));


获取当前时间,精确到

private static final SimpleDateFormat DATE_FORMAT_FULL = new SimpleDateFormat(
			"yyyy-MM-dd HH:mm:ss");
	Date date=new Date();
		 // 24小时的日期  小时为HH 
		System.out.println(DATE_FORMAT_FULL.format(date)); 
如果是12小时格式的日期,小时使用 hh。


可以封装成一个方法,在需要的地方直接调用该方法就可以了。

public static final String DATE_FORMAT= "yyyy-MM-dd HH:mm:ss";
	
	/**
	 * 获取当前日期的年月日时分秒格式
	 * @return
	 */
	public static String getDateFormatter() {
		Date date = new Date();
		DateFormat df = new SimpleDateFormat(DATE_FORMAT);
		return df.format(date);
	}

我们经常使用当前日期来给文件进行命名,把上面的日期格式中的‘-’和空格都去掉就可以用作给文件命名了。


Calendar 转化为Date

Calendar cal=Calendar.getInstance();
		Date date=cal.getTime();
		System.out.println(date);

Calendar cal=Calendar.getInstance();
		cal.add(Calendar.DATE, -2);
		Date date = cal.getTime();
		System.out.println(date); //日期比当前日期减少两天

Date 转化为Calendar

Date date2=new Date();
		Calendar cal2=Calendar.getInstance();
		cal2.setTime(date2);
		System.out.println(cal2);


 Date 和String的相互转化


	SimpleDateFormat sdf = new SimpleDateFormat("yyyy年M月dd日");
		Calendar cal2 = Calendar.getInstance();
		Date d = cal2.getTime();
		String str = sdf.format(d);
		System.out.println(str);
		String s="2014年1月21日";
		String s2="";
		try {
			// String --> Date --> String
			Date d2 = sdf.parse(s);
			s2 = sdf.format(d2);
			System.out.println(s2);

			System.out.println(s.equals(s2)); // true
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(s2);
		System.out.println(str);
		if (s2.equals(str)) {
			System.out.println("true"); // true
		}
		if (s.equals(str)) {
			System.out.println("true"); // true
		} else {
			System.out.println("false");
		}



posted on 2014-01-13 14:47  jinfenglee  阅读(417)  评论(0编辑  收藏  举报

导航