import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Calendar;
public class DateCenter {
/**
* 字符转日期
* @param str
* @return
*/
public static Date getDate(String str){
Date outDate = new Date();
try{
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
outDate = sf.parse(str);
//sf.getCalendar().MONTH;
// System.out.println(sf.getCalendar().YEAR);
sf.getCalendar().get(sf.getCalendar().YEAR);
return outDate;
}catch(Exception ex){
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
try {
outDate = sf.parse("1900-01-01");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(ex);
}
return outDate;
}
public static Date getDateThrows(String str) throws ParseException{
Date outDate = new Date();
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
outDate = sf.parse(str);
//sf.getCalendar().MONTH;
// System.out.println(sf.getCalendar().YEAR);
sf.getCalendar().get(sf.getCalendar().YEAR);
return outDate;
}
/**
* 如果格式不正确 返回null
* @param str
* @return
*/
public static Date getDateNull(String str){
Date outDate = new Date();
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
try {
outDate = sf.parse(str);
} catch (ParseException e) {
outDate = null;
// TODO Auto-generated catch block
//e.printStackTrace();
System.out.println(str + " 日期不符合 yyyy-MM-dd 格式" );
}
//sf.getCalendar().MONTH;
// System.out.println(sf.getCalendar().YEAR);
sf.getCalendar().get(sf.getCalendar().YEAR);
return outDate;
}
/**
* 获得本月的第一天 2007-07-15 返回 2007-07-01
* @param str
* @return
*/
public static Date getDateSign(String datestr){
Date dateSign=new Date();
try {
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
dateSign = sf.parse(datestr);
dateSign.setDate(1);
}catch(Exception ex){
System.out.println(ex);
}
return dateSign;
}
/**
* 获得日期的年份
* @param str
* @return
*/
public static String getYear(String str){
String returnStr ="";
Date outDate = new Date();
try{
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
outDate = sf.parse(str);
//sf.getCalendar().MONTH;
returnStr = ""+sf.getCalendar().get(Calendar.YEAR);
}catch(Exception ex){
System.out.println(ex);
}
return returnStr;
}
/**
* 获得日期的月份
* @param str
* @return
*/
public static String getMonth(String str){
String returnStr ="";
Date outDate = new Date();
try{
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
outDate = sf.parse(str);
//sf.getCalendar().MONTH;
int month = sf.getCalendar().get(Calendar.MONTH)+1;
returnStr = ""+month;
}catch(Exception ex){
System.out.println(ex);
}
return returnStr;
}
/**
* 获得日期的天数
* @param str
* @return
*/
public static String getDays(String str){
String returnStr ="";
Date outDate = new Date();
try{
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
outDate = sf.parse(str);
//sf.getCalendar().MONTH;
int days = sf.getCalendar().get(Calendar.DAY_OF_MONTH);
returnStr = ""+days;
}catch(Exception ex){
System.out.println(ex);
}
return returnStr;
}
/**
* 日期 转字符
* @param str
* @return
*/
public static String getDateStr(Date _date){
String strDate ="";
try{
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
strDate = sf.format(_date);
}catch(Exception ex){
System.out.println(ex);
}
//System.out.println("xxxxxxx" + strDate);
return strDate;
}
public static String getDateTimeStr(Date _date){
String strDate ="";
try{
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
strDate = sf.format(_date);
}catch(Exception ex){
System.out.println(ex);
}
//System.out.println("xxxxxxx" + strDate);
return strDate;
}
/**
* 获得中文的星期几
* @param str
* @return
*/
public static String getDays_cn(Date _date){
String str = "";
int days = _date.getDay();
if(days==0){
str= "星期天";
}else if(days==1){
str= "星期一";
}else if(days==2){
str= "星期二";
}else if(days==3){
str= "星期三";
}else if(days==4){
str= "星期四";
}else if(days==5){
str= "星期五";
}else if(days==6){
str= "星期六";
}
return str;
}
/**
* 获得中文的周几
* @param str
* @return
*/
public static String getDays_cn2(Date _date){
String str = "";
int days = _date.getDay();
if(days==0){
str= "周日";
}else if(days==1){
str= "周一";
}else if(days==2){
str= "周二";
}else if(days==3){
str= "周三";
}else if(days==4){
str= "周四";
}else if(days==5){
str= "周五";
}else if(days==6){
str= "周六";
}
return str;
}
String _________月份__________ ="";
/**
* 获得本月的第一天
* @param date
* @return
*/
public static Date getFirstDateInMonth(Date date){
Date outDate = null;
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
sf.format(date);
sf.getCalendar().set(sf.getCalendar().DAY_OF_MONTH, 1);
outDate =sf.getCalendar().getTime();
return outDate;
}
/**
* 获得本月的最后一天
* @param date
* @return
*/
public static Date getLastDateInMonth(Date date){
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
sf.format(date);
// sf.getCalendar().set(sf.getCalendar().DAY_OF_MONTH, 1);
// 月份+1 日期 -1 获得 本月最后一天的效果
sf.getCalendar().add(sf.getCalendar().MONTH, 1);
sf.getCalendar().set(sf.getCalendar().DAY_OF_MONTH, 1);
//
sf.getCalendar().add(sf.getCalendar().DAY_OF_MONTH, -1);
Date outDate =sf.getCalendar().getTime();
return outDate;
}
public static Date addMonth(Date date){
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyy-MM-dd");
sf.format(date);
// sf.getCalendar().set(sf.getCalendar().DAY_OF_MONTH, 1);
// 月份+1 日期 -1 获得 本月最后一天的效果
sf.getCalendar().add(sf.getCalendar().MONTH, 1);
Date outDate =sf.getCalendar().getTime();
return outDate;
}
/**
* 年份下拉框
* @param str
* @return
*/
public static ArrayList getYearsSelectOptions(){
ArrayList ar01 = new ArrayList();
add_item(ar01,"2009","2009");
add_item(ar01,"2010","2010");
add_item(ar01,"2011","2011");
return ar01;
}
public static ArrayList getMonthSelectOptions(){
ArrayList ar01 = new ArrayList();
add_item(ar01,"1","01");
add_item(ar01,"2","02");
add_item(ar01,"3","03");
add_item(ar01,"4","04");
add_item(ar01,"5","05");
add_item(ar01,"6","06");
add_item(ar01,"7","07");
add_item(ar01,"8","08");
add_item(ar01,"9","09");
add_item(ar01,"10","10");
add_item(ar01,"11","11");
add_item(ar01,"12","12");
return ar01;
}
private static void add_item(List list,String itemName,String itemValue){
Item _Item = new Item();
_Item.setItemName(itemName);
_Item.setItemValue(itemValue);
list.add(_Item);
}
/**
* 添加 orcle 数据库中查询日期的 to_char 字符串等。。。
* @param dateCol 类似 bwyBt.gwyFfjl.datesign
* @return
*/
public static String append_Oracle_DateCol_str(String dateCol){
return "to_char("+dateCol+",'yyyy-MM-dd')";
}
/**
* 添加 orcle 数据库中查询日期
* @param dateCol bwyBt.gwyFfjl.datesign
* @param dateStrValue 2009-1-1
* @return
*/
public static String append_Oracle_DateCol_Euqals_DateStr(String dateCol,String dateStrValue){
return "to_char("+dateCol+",'yyyy-MM-dd')"+"='"+dateStrValue+"'";
}
/**
* 添加 orcle 数据库中查询日期的 to_date 字符串等。。。
* @param dateCol 类似 bwyBt.gwyFfjl.datesign
* @return
*/
public static String append_Oracle_toDateCol_str(String datestr){
return "to_date('"+datestr+"','yyyy-MM-dd')";
}
}
JAVA日期操作类
最新推荐文章于 2024-05-06 18:00:52 发布