通过一main 方法测试
System.out.println(DateUtil.getYearAndMonth("2009-01-01",10));
输出 2019-01-01Java测试
System.out.println(DateUtil.getYearAndMonth("2009-01-01",10));
输出 2019-01-01Java测试
解决方案 »
- jsp内置对象out的两个方法out.clear()和out.clearBuffer()的区别
- databasemetadata gettables方法的四个参数
- 作一个小游戏,看你是不是菜鸟。
- Hibernate取Session需要用单例吗?
- 不能存到数据库
- 如何通过程序跟踪查看spring源代码?
- 请教struts下使用javascript做级联菜单的问题(急问)
- 请帮看看这上下文应如何写
- 谁用过jdeveloper,我想请教各位怎么配置其中的application server connection?
- 为什么我在MyEclipse的Problems里只能看到一部分的Errors和Warnings?
- 初学者咨询几个简单的问题。
- 关于单元测试的疑问
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
//c.set
Date data = c.getTime();
c.add(Calendar.YEAR, 10);
System.out.println(c.getTime());
}
自己把格式转换一下 修改一下就行了
Java代码
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TempTest {
public static void main(String[] args) throws Exception {
Date date = new Date(0);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Calendar cale = Calendar.getInstance();
cale.setTime(date);
for (int i = 0; i < 20000; i++) {
if (!isValidDate(df.format(date))) {
System.out.println("校验失败:" + df.format(date));
}
cale.add(Calendar.DAY_OF_YEAR, 1);
}
System.out.println(df.format(cale.getTime()) + " End.");
}
/**
* 判断日期格式:yyyy-mm-dd
*
* @param sDate
* @return
*/
public static boolean isValidDate(String sDate) {
String datePattern1 = "\\d{4}-\\d{2}-\\d{2}";
String datePattern2 = "^((\\d{2}(([02468][048])|([13579][26]))"
+ "[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|"
+ "(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?"
+ "((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])|([13579][01345789]))[\\-\\/\\s]?("
+ "(((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?"
+ "((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))";
if ((sDate != null)) {
Pattern pattern = Pattern.compile(datePattern1);
Matcher match = pattern.matcher(sDate);
if (match.matches()) {
pattern = Pattern.compile(datePattern2);
match = pattern.matcher(sDate);
return match.matches();
} else {
return false;
}
}
return false;
}
}