陈靖文,括号君本人照片,夏之星是谁演的
可以计算父亲节、母亲节这样的节日,也可以定义如每月最好一个周五,以方便安排会议。
int[] dates = dateutils.gendate(strdate);
chinesecalendar ccalendar = new chinesecalendar();
ccalendar.setgregorianyear(dates[0]);
ccalendar.setgregorianmonth(dates[1]);
ccalendar.setgregoriandate(dates[2]);
if ("m".equalsignorecase(looppriod)) // 处理月
{
if (islunar) {
for (int i = 0; i < cyclepriod; i++) {
ccalendar.nextchinesemonth();
}
returnvalue = dateutils.gendate(ccalendar.getgregorianyear(),
ccalendar.getgregorianmonth(),
ccalendar.getgregoriandate());
} else {
returnvalue = dateutils.caldate(strdate, cyclepriod, 2);
}
} else if ("d".equalsignorecase(looppriod)) // 处理日
{
returnvalue = dateutils.caldate(strdate, cyclepriod, 5);
} else if ("y".equalsignorecase(looppriod)) // 处理年
{
if (islunar) {
ccalendar.addchineseyear(cyclepriod);
returnvalue = dateutils.gendate(ccalendar.getgregorianyear(),
ccalendar.getgregorianmonth(),
ccalendar.getgregoriandate());
} else {
returnvalue = dateutils.caldate(strdate, cyclepriod, 1);
}
} else if ("w".equalsignorecase(looppriod)) // 处理周
{
returnvalue = dateutils.caldate(strdate, cyclepriod, 3);
} else if ("h".equalsignorecase(looppriod)) // 处理小时
{
returnvalue = timeutils.addtime(strdate, 0, cyclepriod);
} else if ("f".equalsignorecase(looppriod)) // 处理分钟
{
returnvalue = timeutils.addtime(strdate, 1, cyclepriod);
} else if ("s".equalsignorecase(looppriod)) // 处理秒
{
returnvalue = timeutils.addtime(strdate, 2, cyclepriod);
} else // 处理非常规周期
{
if ("m".equalsignorecase(stringutils.left(looppriod, 1))) {
string mnb = looppriod.substring(1, 2);
string wnb = "";
int mnbvalue = 0;
int wnbvalue = 0;
if (looppriod.indexof("w") > 1) {
wnb = looppriod.substring(looppriod.indexof("w") + 1,
looppriod.indexof("w") + 2);
mnbvalue = integer.parseint(looppriod.substring(2,
looppriod.indexof("w")));
wnbvalue = integer.parseint(looppriod.substring(
looppriod.indexof("w") + 1, looppriod.length()));
if ("n".equalsignorecase(mnb)) {
returnvalue = getbeforeweekday(strdate, mnbvalue,
wnbvalue);
} else if ("b".equalsignorecase(mnb)) {
returnvalue = getbackweekday(strdate, mnbvalue,
wnbvalue);
}
} else {
mnbvalue = integer.parseint(looppriod.substring(2,
looppriod.length())) - 1;
if ("n".equalsignorecase(mnb)) {
returnvalue = caldate(givemonthfirst(strdate),
mnbvalue, 5);
} else if ("b".equalsignorecase(mnb)) {
returnvalue = caldate(givemonthlast(strdate),
-mnbvalue, 5);
}
}
} else if ("w".equalsignorecase(stringutils.left(looppriod, 1))) {
string week = stringutils.right(looppriod,
looppriod.length() - 1);
strdate = caldate(strdate, cyclepriod - 1, 3);
while (true) {
strdate = caldate(strdate, 1, 5);
if (week.indexof(string.valueof(getweekday(strdate))) >= 0) {
returnvalue = strdate;
break;
}
}
}
}
return returnvalue;
}
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
浅析我对 String、StringBuilder、StringBuffer 的理解
使用IDEA搭建SSM框架的详细教程(spring + springMVC +MyBatis)
Springboot整合freemarker 404问题解决方案
引入mybatis-plus报 Invalid bound statement错误问题的解决方法
网友评论