字符串与日期类型转换的工具类

常用的字符串转date    ,和日期转字符串的方法...

package com.cq2022.zago.base.util;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;

import javax.xml.datatype.DatatypeFactory;
import javax.xml.datatype.XMLGregorianCalendar;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/***
 * 日期工具类
 *
 * @author shijing
 *
 */
public class DateUtils {

	private static final Logger logger = LoggerFactory.getLogger(DateUtils.class);

	/***
	 * Date类型转换成XMLGregorianCalendar类型
	 *
	 * @param date
	 * @return
	 */
	public static XMLGregorianCalendar convertToXMLGregorianCalendar(Date date) {
		GregorianCalendar cal = new GregorianCalendar();
		cal.setTime(date);
		XMLGregorianCalendar gc = null;
		try {
			gc = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
		}
		catch (Exception e) {
			logger.error("Date类型转换成XMLGregorianCalendar类型出错:"+e);
		}
		return gc;
	}

	/***
	 * XMLGregorianCalendar类型转换成Date类型
	 *
	 * @param cal
	 * @return
	 * @throws Exception
	 */
	public static Date convertToDate(XMLGregorianCalendar cal) throws Exception {
		GregorianCalendar ca = cal.toGregorianCalendar();
		return ca.getTime();
	}

	/**
	 * String 转 Date
	 * 2015年3月25日上午11:27:14
	 * auther:shijing
	 * @param str 日期字符串
	 * @param format 转换格式
	 * @return
	 * Date
	 */
	public static Date stringToDate(String str, String format) {
		DateFormat dateFormat = new SimpleDateFormat(format);
		Date date = null;
		try {
			date = dateFormat.parse(str);
		}
		catch (ParseException e) {
			logger.error("String类型 转 Date类型出错:"+e);
		}
		return date;
	}

	/**
	 * Date 转 String
	 * auther: shijing
	 * 2015年3月25日上午11:28:14
	 * @param date 日期
	 * @param format 转换格式
	 * @return
	 */
	public static String dateToString(Date date,String format){
		DateFormat dateFormat = new SimpleDateFormat(format);
		String strDate=null;
		try {
			if(date!=null){
				strDate=dateFormat.format(date);
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			logger.error("Date类型 转 String类型出错:"+e);
		}
		return strDate;
	}

	/***
	 * 测试方法
	 *
	 * @param args
	 */
	public static void main(String[] args) {
		XMLGregorianCalendar d = DateUtils
				.convertToXMLGregorianCalendar(new Date());
//		System.out.println(d.getDay());
		XMLGregorianCalendar cal = null;
		try {
			cal = DatatypeFactory.newInstance().newXMLGregorianCalendar();
			cal.setMonth(06);
			cal.setYear(2010);
			Date date = DateUtils.convertToDate(cal);
			String format = "yyyy-MM-dd HH:mm:ss";
			SimpleDateFormat formatter = new SimpleDateFormat(format);
//			System.out.println(formatter.format(date));

			Date d1 = DateUtils.stringToDate("2014/7/24 9:51:00", "yyyy/MM/dd hh:mm:ss");
			XMLGregorianCalendar d2 = DateUtils.convertToXMLGregorianCalendar(d1);
//			System.out.println(d2.toString());

			String dateStr=DateUtils.dateToString(cal.toGregorianCalendar().getTime(), "yyyy-MM-dd HH:mm:ss");
//			System.out.println("dateStr="+ dateStr);
		}
		catch (Exception e) {
			e.printStackTrace();
		}
	}
}

时间: 2024-08-26 08:23:04

字符串与日期类型转换的工具类的相关文章

Java字符串转16 进制工具类Hex.java

原文:Java字符串转16 进制工具类Hex.java 源代码下载地址:http://www.zuidaima.com/share/1550463378410496.htm Java 字符串转 16 进制工具类 Hex.java 实现 16进制 0xfecd .. 和 java 字符串之间的互转换! 如果做开发,通常用户登陆密码都会 mad5(salt + pwd) 然后再将 md 之后的数据 hex 一下. 这个工具类,就是实现此效果的. /* * */ package com.zuidaim

类型转换辅助工具类TypeCaseHelper

package org.sakaiproject.util; import java.math.BigDecimal; import java.sql.Date; import java.sql.Time; import java.sql.Timestamp; import java.text.DateFormat; import java.text.NumberFormat; import java.text.ParseException; import java.text.SimpleDat

16、根据年月日获取周几 以及整理的日期常用的工具类

1 /** 2 * @param year 3 * @param month 4 * @param day 5 * @return 6 */ 7 public static String CaculateWeekDay(int y,int m,int d) 8 { 9 10 String strDate = y+"-"+m+"-"+d;// 定义日期字符串 11 SimpleDateFormat format = new SimpleDateFormat("

常用字符串与集合类转换的工具类

在项目中,我们经常需要把接收到的字符串转换成对应的集合类保存,或者把集合类转换成字符串以方便传输,这个工具类中封装了几个常用的方法,对于这种转换需求十分方便. 1 import java.util.Arrays; 2 import java.util.Collection; 3 import java.util.HashMap; 4 import java.util.HashSet; 5 import java.util.Map; 6 import java.util.Properties; 7

转换日期格式的工具类

写一个工具类,用来转换固定的日期格式: import java.text.SimpleDateFormat; import java.util.Date; public class DateFormat { public static String convert(Date date) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String dateStr = sdf.format(date); retur

Java 日期字符串与日期类型转换

1.SimpleDateFormat.format 把日期类型转化到指定格式字符串 public static String convToString(Calendar cld,String template){ String resultString=null; try { Date date=cld.getTime(); SimpleDateFormat sdf=new SimpleDateFormat(template,Locale.getDefault()); resultString=

日期格式数位工具类:日期格式互转

public final static String PATTERN = "yyyy-MM-dd"; public final static String PATTERN_TIME = "yyyy-MM-dd HH:mm:ss"; public static Date parseString(String date, String format) throws ParseException { SimpleDateFormat dateformat = new Si

Java日期时间实用工具类

1.Date (java.util.Date)    Date();        以当前时间构造一个Date对象    Date(long);        构造函数        boolean after(Date when)         测试此日期是否在指定日期之后 boolean before(Date when)         测试此日期是否在指定日期之前 Object clone()         返回此对象的副本 int compareTo(Date anotherDat

日期操作的工具类

1 public class DateUtil { 2 3 private String year; 4 private String month; 5 private String day; 6 7 /** 8 * 月份字符串最小值 9 */ 10 public static final String MONTH_MIN = "01"; 11 /** 12 * 月份字符串最大值 13 */ 14 public static final String MONTH_MAX = "