当前位置:编程学习 > JAVA >>

java 代码 在获取当前的时间 加十年

通过一main 方法测试
System.out.println(DateUtil.getYearAndMonth("2009-01-01",10));


输出 2019-01-01 Java 测试 --------------------编程问答-------------------- 2009+10 不就OK了? --------------------编程问答-------------------- 你要问什么 你自己不是已经实现了吗 --------------------编程问答--------------------
引用 2 楼 mailyxf 的回复:
你要问什么 你自己不是已经实现了吗

 额,没有我只是把方法名定义出来了,方法没有实现。 --------------------编程问答--------------------

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());
}


自己把格式转换一下  修改一下就行了 --------------------编程问答--------------------
引用 3 楼 u011097606 的回复:
Quote: 引用 2 楼 mailyxf 的回复:

你要问什么 你自己不是已经实现了吗

 额,没有我只是把方法名定义出来了,方法没有实现。

看楼上 --------------------编程问答-------------------- 楼上好厉害,这么难的问题,一下就解决楽 --------------------编程问答-------------------- 楼上的可以实现楼主的需求了 --------------------编程问答-------------------- --------------------编程问答-------------------- 闰年的2月29日咋处理。 --------------------编程问答--------------------
引用 9 楼 u011101589 的回复:
闰年的2月29日咋处理。
用正则表达式匹配,从1970-01-01开始往后2万天逐一测试日期有效性,包括闰年2月29日,都可以校验通过。
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;  
    }  
  
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,