
//将yyyyMMdd转为date
public static Date getCoreToEmsDateStr(String dateStr){
DateFormat format = new SimpleDateFormat("yyyyMMdd");
Date d = null;
try{
d = formatparse(dateStr);
}catch(ParseException e){
eprintStackTrace();
}
return d;
}
public static String getDateAfterDays(Timestamp s,int days){
Timestamp currTimestamp = s;
for (int i=0;i<days;i++){
currTimestamp = getNextDate(currTimestamp);
}
return getDateTimeStr(currTimestamp,"3");
}
public static Timestamp getNextDate(javasqlTimestamp tsDate){
if(tsDate==null)
return null;
javautilCalendar calendar = CalendargetInstance();
calendarsetTime(tsDate);
return getDateTime(calendarget(CalendarYEAR),calendarget(CalendarMONTH)+1,calendarget(CalendarDATE)+1,
calendarget(CalendarHOUR_OF_DAY),calendarget(CalendarMINUTE),calendarget(CalendarSECOND));
}
public static javasqlTimestamp getDateTime(int year,int month,int day,int hour,int minute,int second){
javasqlTimestamp ts = null;
javautilDate dt = null;
javautilCalendar calendar = CalendargetInstance();
calendarclear();
calendarset(year,month-1,day,hour,minute,second);
dt = calendargetTime();
ts = new javasqlTimestamp(dtgetTime());
return ts;
}
/
比较两个时间是否相同
@param tsBeginDate
@param tsEndDate
@param bool
@return
/
public static long getDateInterval(Timestamp tsBeginDate,Timestamp tsEndDate,boolean bool){
long lDays = 0;
if(bool){
tsBeginDate = CommongetDateTime(CommongetDateString(tsBeginDate),bool);
}
if(tsBeginDate!=null&&tsEndDate!=null){
Log4jinfo("tsEndDategetTime ()===="+tsEndDate);
Log4jinfo("tsBeginDategetTime ()===="+tsBeginDate);
lDays = (tsEndDategetTime()-tsBeginDategetTime())/86400000+1;
Log4jinfo("lDays===="+lDays);
}
return lDays;
}
/
格式化成Timestamp类型
@param sDt
@param bool
@return
/
public static javasqlTimestamp getDateTime(String sDt,boolean bool){
try{
return javasqlTimestampvalueOf(sDt); //sDt format:yyyy-mm-dd hh:mm:ssfffffffff
}catch(IllegalArgumentException iae){
if(bool)
sDt = sDt+" 23:59:590";
else
sDt = sDt+" 00:00:000";
return javasqlTimestampvalueOf(sDt);
}
}
/
根据时间获取日期字符串
@param ts
@return
/
public static String getDateString(Timestamp ts){
if(ts==null)
return "";
Calendar calendar = CalendargetInstance();
calendarsetTime(ts);
String strMonth = StringvalueOf(calendarget(CalendarMONTH)+1);
if(strMonthlength()==1){
strMonth = "0"+strMonth;
}
String strDay = StringvalueOf(calendarget(CalendarDATE));
if(strDaylength()==1){
strDay = "0"+strDay;
}
return calendarget(CalendarYEAR)+"-"+strMonth+"-"+strDay;
}
Calendar ca = CalendargetInstance(); int year = caget(CalendarYEAR);//获取年份 int month=caget(CalendarMONTH);//获取月份 int day=caget(CalendarDATE);//获取日 int minute=caget(CalendarMINUTE);//分 int hour=caget(CalendarHOUR);//小时 int second=caget(CalendarSECOND);//秒 int WeekOfYear = caget(CalendarDAY_OF_WEEK);
public static void main(String[] args) {
Calendar calendar = CalendargetInstance(LocalegetDefault());
Systemoutprintln(calendarget(CalendarYEAR));
Systemoutprintln(calendarget(CalendarMONTH)+1);
Systemoutprintln(calendarget(CalendarDATE));
}
3行代码分别用于获取当前时间的年、月、日,获取月份的时候需要+1,因为月份取的索引值,从0-11
取得时间类
1、Date ,Systemoutprintln(new date());
2、calendar 此类是抽象类,要想实例化,需要实例化子类GregorianCalendar
看看jdk的API中给了相应的方法:注意月份需要加1;
有时候希望对格式进行转换。
SimpleDateFormat类 此类在javatext包下
1、准备原格式,2、准备新格式 3、转化
String str = "2011-09-11 16:35:06";
SimpleDateFormat sd = new SimpleDateFormate("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sd2 = new SimpleDateFormate("yyyy
年MM月dd日 HH时mm分ss秒")
//然后进行转化
Date d = sdparse(str);
将时间数插入sd2上
String newStr = sd2format(d);
Systemoutprintln(newStr);
java获取一个时间的年月日代码及相关解释说明参考下面代码
package zhidao;
import javautilCalendar;
public class Test {
public static void main(String[] args) {
Calendar cal=CalendargetInstance();//使用日历类
int year=calget(CalendarYEAR);//获取年份
int month=calget(CalendarMONTH)+1;//获取月份,因为从0开始的,所以要加1
int day=calget(CalendarDAY_OF_MONTH);//获取天
Systemoutprintln("结果:"+year+"-"+month+"-"+day);
}
}
很多朋友都想知道java怎么获得当前年月日?下面就一起来了解一下吧~
两种方法,通过Date类或者通过Calendar类,Date类比较简单,但是要得到细致的字段的话Calendar类比较方便。
import javatextDateFormat; import javatextSimpleDateFormat; import javautilCalendar; import javautilDate; import javautilLocale; import orgjunitTest; public class GetTimeNow { / 通过Calendar类获取 / @Test public void getTimeNowThroughCalendar(){ //使用默认时区和语言环境获得一个日历。 Calendar rightNow = CalendargetInstance(); /用Calendar的get(int field)方法返回给定日历字段的值。 HOUR 用于 12 小时制时钟 (0 - 11),HOUR_OF_DAY 用于 24 小时制时钟。/ Integer year = rightNowget(CalendarYEAR); Integer month = rightNowget(CalendarMONTH)+1; //第一个月从0开始,所以得到月份+1 Integer day = rightNowget(rightNowDAY_OF_MONTH); Integer hour12 = rightNowget(rightNowHOUR); Integer hour24 = rightNowget(rightNowHOUR_OF_DAY); Integer minute = rightNowget(rightNowMINUTE); Integer second = rightNowget(rightNowSECOND); Integer millisecond = rightNowget(rightNowMILLISECOND); String TimeNow12 = year+"-"+month+"-"+day+" "+hour12+":"+minute+":"+second+":"+millisecond; String TimeNow24 = year+"-"+month+"-"+day+" "+hour24+":"+minute+":"+second+":"+millisecond; Systemoutprintln("日历:"+rightNow+"\n12小时制时钟:"+TimeNow12+"\n24小时制时钟:"+TimeNow24); } / 通过Date类获取 / @Test public void getTimeNowThroughDate(){ Date date=new Date(); DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS"); Systemoutprintln(formatformat(date)); //DateFormat类的静态工厂方法 Systemoutprintln(formatgetInstance()format(date)); Systemoutprintln(formatgetDateInstance()format(date)); Systemoutprintln(formatgetTimeInstance()format(date)); Systemoutprintln(formatgetDateTimeInstance()format(date)); //DateFormat带参数的静态工厂方法 //第一个参数是静态变量style有4中取值0、1、2、3分别对应SHORT、MIDIUM、LONG、FULL //第二个参数根据环境敏感的Locale类的静态变量自定义输出 Systemoutprintln(formatgetDateInstance(0, LocaleCHINA)format(date)); Systemoutprintln(formatgetTimeInstance(0,LocaleCHINA)format(date)); Systemoutprintln(formatgetDateTimeInstance(2,2)format(date)); } / 两者结合。。。 / @Test public void getTimeNowTogether(){ String TimeNow = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS")format(CalendargetInstance()getTime()); Systemoutprintln(TimeNow); } }
日历: javautilGregorianCalendar[time=1454251772565,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sunutilcalendarZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2016,MONTH=0,WEEK_OF_YEAR=6,WEEK_OF_MONTH=6,DAY_OF_MONTH=31,DAY_OF_YEAR=31,DAY_OF_WEEK=1,DAY_OF_WEEK_IN_MONTH=5,AM_PM=1,HOUR=10,HOUR_OF_DAY=22,MINUTE=49,SECOND=32,MILLISECOND=565,ZONE_OFFSET=28800000,DST_OFFSET=0] 12小时制时钟:2016-1-31 10:49:32:565 24小时制时钟:2016-1-31 22:49:32:565 2016-01-31 22:49:50:36 16-1-31 下午10:49 2016-1-31 22:49:50 2016-1-31 22:49:50 2016年1月31日 星期日 下午10时49分50秒 CST 2016-1-31 22:49:50 2016-01-31 22:50:09:270
以上就是关于java中如何从日期类型中获取月全部的内容,包括:java中如何从日期类型中获取月、java如何通过calendar类获取当前系统日期、java获取当前时间几天/月/年前的时间方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)