import java.text.SimpleDateFormat;
import java.util.Date;public class lizi{
public static void main(String args[])
{
   Date date = new Date();
   int year=Integer.parseInt(new SimpleDateFormat("yyyy").format(date));
   int month=Integer.parseInt(new SimpleDateFormat("MM").format(date));
   int day=Integer.parseInt(new SimpleDateFormat("dd").format(date))-6;
  
   if(day<1){
    month-=1;
    if(month==0){
     year-=1;month=12;
    }
    if(month==4||month==6||month==9||month==11){
     day=30+day;
    }else if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
    {
     day=31+day;
    }else if(month==2){
     if(year%400==0||(year %4==0&&year%100!=0))day=29+day;
     else day=28+day;
    }     
   }
   String y = year+"";String m ="";String d ="";
   if(month<10) m = "0"+month;
   else m=month+"";
   if(day<10) d = "0"+day;
   else d = day+"";
  
  System.out.println(y+m+d);
}
}这个是求一周前时间的代码,我想知道一周前每一天的代码怎么求?

解决方案 »

  1.   

    求一周前的时间有这么麻烦吗?你看看这个类 java.util.Calendar
      

  2.   

    java.util.Calendar
    直接调用里面的方法就行了
    先写个简单例子进行测试 熟悉一下它的用法!
      

  3.   

    calendar.add(Calendar.WEEK_OF_YEAR,-1);
      

  4.   

    http://download.csdn.net/source/3320067
    这里有关于星期计算的算法 楼主可以参考一下  可以用数学公式!!!
      

  5.   


    import java.text.SimpleDateFormat;
    public class date {
    public static void main(String[] args){
    for(int i=0;i<7;i++){
    String[] str={"1","2","3","4","5","6","7"};
    SimpleDateFormat tempDate = new SimpleDateFormat("yyyy/MM/dd");
    String weekdate=weekly.getNextDay("2011/05/29", str[i]);
    System.out.println(weekdate);
    }
    }
    }
      

  6.   

    上面那个不够全面
    import java.text.ParsePosition;
    import java.text.SimpleDateFormat;
    import java.util.Date;public class weekly { public static Date ToDate(String sDate) {
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
    ParsePosition pp = new ParsePosition(0);
    Date date = formatter.parse(sDate, pp);
    return date;
    }
    public static String getNextDay(String nowdate, String delay) {
    try{
    SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
    String dates = null;
    Date d = ToDate(nowdate);
    long myTime = (d.getTime() / 1000) + Integer.parseInt(delay) * 24 * 60 * 60;
    d.setTime(myTime * 1000);
    dates = format.format(d);
    return dates;
    }catch(Exception e){
       return null;
    }
    }
    public static void main(String[] args){
    for(int i=0;i<7;i++){
    String[] str={"1","2","3","4","5","6","7"};
    String dates=weekly.getNextDay("2011/02/02", str[i]);
    System.out.println(dates);
    }
    }
    }
      

  7.   


    这个满靠谱的,只可惜没能用Calendar类