我的漫漫程序之旅

          專注于JavaWeb開發
          隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
          數據加載中……

          獲取昨天的日期字符串

          import java.text.SimpleDateFormat;
          import java.util.Date;

          public class Test
          {

              
          /**
               * 獲取昨天的日期字符串
               * 
               * 
          @param nowDate
               *            當前日期的字符串
               * 
          @return
               
          */

              
          public static String getLastDayInfo(String nowDate)
              
          {
                  String yesterday 
          = "";
                  
          int year = 0;
                  
          int month = 0;
                  
          int day = 0;
                  
          try
                  
          {
                      year 
          = Integer.parseInt(nowDate.substring(0, nowDate.indexOf("-")));
                      month 
          = Integer.parseInt(nowDate.substring(
                              nowDate.indexOf(
          "-"+ 1, nowDate.lastIndexOf("-")));
                      day 
          = Integer.parseInt(nowDate
                              .substring(nowDate.lastIndexOf(
          "-"+ 1));
                      
          // System.out.println("nowYear = " + year);
                      
          // System.out.println("nowMonth = " + month);
                      
          // System.out.println("dayDay = " + day);
                      day = day - 1;
                      
          if (day == 0)
                      
          {
                          month 
          = month - 1;
                          
          if (month == 0)
                          
          {
                              
          // January
                              month = 12;
                              day 
          = 31;
                              year 
          = year - 1;
                          }

                          
          else
                          
          {
                              
          // not Jan.
                              switch (month)
                              
          {
                              
          // 1|3|5|7|8|10|12) day=31;;
                              case 1:
                                  day 
          = 31;
                                  
          break;
                              
          case 3:
                                  day 
          = 31;
                                  
          break;
                              
          case 5:
                                  day 
          = 31;
                                  
          break;
                              
          case 7:
                                  day 
          = 31;
                                  
          break;
                              
          case 8:
                                  day 
          = 31;
                                  
          break;
                              
          case 10:
                                  day 
          = 31;
                                  
          break;
                              
          case 12:
                                  day 
          = 31;
                                  
          break;
                              
          // 4|6|9|11) day=30;;
                              case 4:
                                  day 
          = 30;
                                  
          break;
                              
          case 6:
                                  day 
          = 30;
                                  
          break;
                              
          case 9:
                                  day 
          = 30;
                                  
          break;
                              
          case 11:
                                  day 
          = 30;
                                  
          break;
                              
          case 2:
                                  
          if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
                                  
          {
                                      
          // leap year
                                      day = 29;
                                  }

                                  
          else
                                      day 
          = 28;

                              }


                          }

                      }


                      String monthStr 
          = "";
                      String dayStr 
          = "";

                      
          if (month < 10)
                      
          {
                          monthStr 
          = "0" + String.valueOf(month);
                      }

                      
          else
                      
          {
                          monthStr 
          = String.valueOf(month);
                      }


                      
          if (day < 10)
                      
          {
                          dayStr 
          = "0" + String.valueOf(day);
                      }

                      
          else
                      
          {
                          dayStr 
          = String.valueOf(day);
                      }

                      yesterday 
          = String.valueOf(year) + "-" + monthStr + "-" + dayStr;
                  }
           catch (Exception e)
                  
          {
                      e.printStackTrace();
                  }

                  
          return yesterday;
              }


              
          public static void main(String[] args) throws Exception
              
          {
                  System.out.println(getLastDayInfo(
          "2008-03-01"));
                  System.out.println(getLastDayInfo(
          "2008-01-01"));
                  SimpleDateFormat sdf 
          = new SimpleDateFormat("MMMM-dd-yyyy");
                  Date date;
                  String datetime 
          = "02-14-1984";
                  
          try
                  
          {
                      date 
          = sdf.parse(datetime);

                      System.out.println(sdf.format(date));
                  }
           catch (Exception e)
                  
          {
                      System.out.println(e.getMessage());
                  }

                  Date d 
          = java.sql.Date.valueOf("2008-07-06");
                  System.out.println(d.toString());
              }


          }



          posted on 2008-07-11 10:19 々上善若水々 閱讀(1350) 評論(0)  編輯  收藏 所屬分類: J2SE

          主站蜘蛛池模板: 阳朔县| 财经| 高碑店市| 桐柏县| 惠安县| 诏安县| 饶河县| 贵州省| 建宁县| 尼木县| 新乐市| 瓦房店市| 汝南县| 黄陵县| 黑龙江省| 梁平县| 增城市| 伊川县| 菏泽市| 阳信县| 金门县| 巨鹿县| 体育| 扶绥县| 福建省| 图们市| 佛教| 阳东县| 辽阳市| 沾益县| 高唐县| 甘谷县| 小金县| 康平县| 北流市| 墨竹工卡县| 如皋市| 台前县| 揭东县| 泸水县| 渭源县|