我需要限制客户只能在每个月的12号13:00,到20号的12:00才能办理业务并且返回true。
  其他时间返回false ,不能办理业务,怎样控制这个时间段???
 这样的话如何使用 SimpleDateFormat类????

解决方案 »

  1.   

    这个应该通过逻辑来实现,跟SimpleDateFormat没有多大关系吧!
      

  2.   

    SimpleDateFormat是格式化日期,用个逻辑来判断吧。
      

  3.   

    Java中的日期时间
      

  4.   

    这个与SimpleDateFormat一点关系也没有.你的需求用java中的日历类就可以了.
      

  5.   

    给你实现了.代码如下 :import java.util.Calendar;
    import java.util.GregorianCalendar;public class ShijianTest {

    public boolean isComtainDate(Calendar cur) {
    boolean isComtain = false;
    int year  = cur.get(Calendar.YEAR);
        int month = cur.get(Calendar.MONTH);
        Calendar start = new GregorianCalendar(year,month,12,13,0);
        Calendar end   = new GregorianCalendar(year,month,20,12,0);
        if(cur.getTimeInMillis()>=start.getTimeInMillis() && cur.getTimeInMillis()<=end.getTimeInMillis())
         isComtain = true;
    return isComtain;
    }

    public static void main(String[] args) {
    ShijianTest test = new ShijianTest(); 
        Calendar calendar = new GregorianCalendar(2008,10,5,13,29);
        boolean comtainDate = test.isComtainDate(calendar);
        System.out.println(comtainDate);
        calendar = new GregorianCalendar(2008,10,12,13,29);
        comtainDate = test.isComtainDate(calendar);
        System.out.println(comtainDate);
        calendar = new GregorianCalendar(2008,10,20,11,59);
        comtainDate = test.isComtainDate(calendar);
        System.out.println(comtainDate);
        calendar = new GregorianCalendar(2008,10,20,12,1);
        comtainDate = test.isComtainDate(calendar);
        System.out.println(comtainDate);
    }}
      

  6.   

    Calendar中有两个方法before()和after()可以去参考一下
      

  7.   

    import java.text.DateFormat;
    import java.util.Calendar;
    import java.util.Date;public class Test{
        public static void main(String args[]){
         Date date = new Date();
         System.out.println(DateFormat.getDateTimeInstance().format(date) + (isBusinessTime(date)?" ":" 不") + "能办理业务");
        }
        
        public static boolean isBusinessTime(Date date){
         Calendar c = Calendar.getInstance();
         c.setTime(date);
         int day = c.get(Calendar.DAY_OF_MONTH);
         if (day > 12 && day < 20) {
    return true;
    }
         int hour = c.get(Calendar.HOUR_OF_DAY);
         if (day == 12 && hour >= 13) {
    return true;
    }
         if (day == 20 && hour < 12) {
    return true;
    }
        
         return false;
        }
    }
        
      

  8.   

    用before和after确实方便,但是可能带来效率的损失,好想要比较到毫秒级