java时间格式转换

 package org.shineway.com;

 import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar; /**
* 各类时间类型的转换方式
* @author mengzw
* @since 3.0 2014-2-28
*/
public class TimeUtil { public TimeUtil() {
} /**
* 将 Date 类型转换成String
* @param date 时间 Date 类型参数
* @return 返回为 yyyy-MM-dd HH:mm:ss 格式String
*/
public static String getTimeString(Date date) {
String s = "yyyy'-'MM'-'dd' 'HH:mm:ss";
SimpleDateFormat simpledateformat = new SimpleDateFormat(s);
return simpledateformat.format(date);
} /**
* 得到当前时间的时分秒
* @return HH:mm:ss格式的字符串
*/
public static String getOnlyCurrentTimeString() {
String s = "HH:mm:ss";
SimpleDateFormat simpledateformat = new SimpleDateFormat(s);
Calendar calendar = Calendar.getInstance();
return simpledateformat.format(calendar.getTime());
} /**
* 将字符串日期转换成Date类型
* @param s 类型格式:'yyyy-MM-dd' / 'yyyy-MM-dd HH:mm:ss'
* @param s1 需要转换的 String类型 日期
* @return Date 类型日期
*/
public static Date getString2Date(String s, String s1) {
Date date = null;
try {
date = (new SimpleDateFormat(s1)).parse(s);
} catch (Exception exception) {
date = null;
}
return date;
} /**
* 将 Date 类型转换成指定格式
* @param date 数据
* @param s 时间显示格式
* @return String日期字符串
*/
public static String getFormartString(Date date, String s) {
SimpleDateFormat simpledateformat = new SimpleDateFormat(s);
if (null != date)
return simpledateformat.format(date);
else
return null;
} /**
* 将 Calendar 类型转换为指定格式
* @param calendar 数据
* @param s 时间显示格式
* @return String日期字符串
*/
public static String getFormartString(Calendar calendar, String s) {
SimpleDateFormat simpledateformat = new SimpleDateFormat(s);
return simpledateformat.format(calendar.getTime());
} /**
* 将 Calendar 时间类型转换为String
* @param calendar
* @return 返回yyyy-MM-dd HH-mm-ss格式
*/
public static String getTimeString(Calendar calendar) {
String s = "yyyy'-'MM'-'dd' 'HH'-'mm'-'ss";
SimpleDateFormat simpledateformat = new SimpleDateFormat(s);
return simpledateformat.format(calendar.getTime());
} /**
* 将Calendar 时间类型转换成String
* @param calendar
* @return 返回 yyyy-MM-dd格式
*/
public static String getDateString(Calendar calendar) {
String s = "yyyy'-'MM'-'dd";
SimpleDateFormat simpledateformat = new SimpleDateFormat(s);
return simpledateformat.format(calendar.getTime());
} /**
* 将String 日期字符转换成Calendar类型
* @param s 时间类型数据
* @param s1 需要转换格式
* @return Calendar日期数据
*/
public static Calendar getCalendar(String s, String s1) {
SimpleDateFormat simpledateformat = new SimpleDateFormat(s1);
Calendar calendar = Calendar.getInstance();
try {
calendar.setTime(simpledateformat.parse(s));
} catch (ParseException parseexception) {
return null;
}
return calendar;
} /**
* 输入日期自动判断格式返回日期
* @param s 日期字符
* @return Calendar类型日期
*/
public static Calendar getCalendar(String s) {
int i = s.length();
switch (i) {
case 19: // '\023'
return getCalendar(s, "yyyy'-'MM'-'dd' 'HH:mm:ss"); case 10: // '\n'
return getCalendar(s, "yyyy'-'MM'-'dd");
}
return null;
} /**
* 得到当前为第几个季度
* @return
*/
public static String getCurrentSeason() {
String s = getFormartString(Calendar.getInstance(), "MM");
String s1 = "";
if (s.equals("01") || s.equals("02") || s.equals("03"))
s1 = "1";
else if (s.equals("04") || s.equals("05") || s.equals("06"))
s1 = "2";
else if (s.equals("07") || s.equals("08") || s.equals("09"))
s1 = "3";
else if (s.equals("10") || s.equals("11") || s.equals("12"))
s1 = "4";
return s1;
} public static int getWeekOfYear(Date date) {
GregorianCalendar gregoriancalendar = new GregorianCalendar();
gregoriancalendar.setFirstDayOfWeek(2);
gregoriancalendar.setMinimalDaysInFirstWeek(7);
gregoriancalendar.setTime(date);
return gregoriancalendar.get(3);
} /**
* 判断是否为闰年
* @param i 年份
* @return 是闰年为true
*/
public static boolean isLeapYear(int i) {
boolean flag = false;
if (i % 4 == 0 && i % 100 != 0)
flag = true;
else if (i % 400 == 0)
flag = true;
else
flag = false;
return flag;
} }
上一篇:原创:js代码, 让dedecms支持Tag选择, 添加内容更为方便,不用手输Tag


下一篇:转:.NET中使用Redis (一)