首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

JAVA日期处置 (转)

2013-07-08 
JAVA日期处理 (转)package com.xxx.utilimport java.text.ParseExceptionimport java.util.Calendarimp

JAVA日期处理 (转)

package com.xxx.util;

import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
import java.text.SimpleDateFormat;

public class CommonUtil {

/**
* 将Date类型日期转化成String类型"任意"格式
* java.sql.Date,java.sql.Timestamp类型是java.util.Date类型的子类
* @param date Date
* @param format String
* "2003-01-01"格式
* "yyyy年M月d日"
* "yyyy-MM-dd HH:mm:ss"格式
* @return String
*/
public static String dateToString(java.util.Date date,String format) {
if (date==null || format==null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat(format);
String str = sdf.format(date);
return str;
}

/**
* 将String类型日期转化成java.utl.Date类型"2003-01-01"格式
* @param str String 要格式化的字符串
* @param format String
* @return Date
*/
public static java.util.Date stringToUtilDate(String str,String format) {
if (str==null||format==null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat(format);
java.util.Date date = null;
try
{
date = sdf.parse(str);
}
catch(Exception e)
{
}
return date;
}

/**
* 将String类型日期转化成java.sql.Date类型"2003-01-01"格式
* @param str String
* @param format String
* @return Date
*/
public static java.sql.Date stringToSqlDate(String str,String format) {
if (str==null||format==null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat(format);
java.util.Date date = null;
try
{
date = sdf.parse(str);
}
catch(Exception e)
{
return null;
}
return new java.sql.Date(date.getTime());
}

/**
* 将String类型日期转化成java.sql.Date类型"2003-01-01"格式
* @param str String
* @param format String
* @return Timestamp
*/
public static java.sql.Timestamp stringToTimestamp(String str,String format) {
if (str==null||format==null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat(format);
java.util.Date date = null;
try
{
date = sdf.parse(str);
}
catch(Exception e)
{
return null;
}
return new java.sql.Timestamp(date.getTime());
}

/**
* 将java.util.Date日期转化成java.sql.Date类型
* @param Date
* @return 格式化后的java.sql.Date
*/
public static java.sql.Date toSqlDate(Date date) {
if (date==null) {
return null;
}
return new java.sql.Date(date.getTime());
}

/**
* 将字符串转化为时间格式 string to string
* @param str String
* @param format String
* @return String
*/
public static String toDateString(String str,String oldformat,String newformat){
return dateToString(stringToUtilDate(str,oldformat),newformat);
}

/**
* 将日历转化为日期
* @param calendar Calendar
* @return Date
*/
public static java.util.Date converToDate(java.util.Calendar calendar){
return Calendar.getInstance().getTime();
}

/**
* 将日期转化为日历
* @param date Date
* @return Calendar
*/
public static java.util.Calendar converToCalendar(java.util.Date date){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return calendar;
}

/**
* 求得从某天开始,过了几年几月几日几时几分几秒后,日期是多少
* 几年几月几日几时几分几秒可以为负数
* @param date Date
* @param year int
* @param month int
* @param day int
* @param hour int
* @param min int
* @param sec int
* @return Date
*/
public static java.util.Date modifyDate(java.util.Date date,int year ,int month,int day,int hour,int min,int sec){
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.YEAR,year);
cal.add(Calendar.MONTH,month);
cal.add(Calendar.DATE,day);
cal.add(Calendar.HOUR,hour);
cal.add(Calendar.MINUTE,min);
cal.add(Calendar.SECOND,sec);
return cal.getTime();
}

/**
* 取得当前日期时间
* 1:year
* 2:month
* 3:day
*/
public static int getCurTime(int i) {
if (i == 1) {
return java.util.Calendar.getInstance().get(Calendar.YEAR);
}
else if (i == 2) {
return java.util.Calendar.getInstance().get(Calendar.MONTH) + 1;
}
else if (i == 3) {
return java.util.Calendar.getInstance().get(Calendar.DATE);
}
return 0;
}

}

热点排行