2015-03-31 126 views
4

請在標記重複之前仔細閱讀問題。android獲取相應日期的前一日期(不是昨天的日期)

我想對應日期以前的日期。 (非昨天的日期)

例如,如果用戶點擊按鈕,他將被導航到另一個屏幕,並顯示有關昨天的數據。

如果他再次點擊該屏幕上的同一個按鈕,那麼數據應在前一天顯示....等等......直到數據出現在我的數據庫中。

所以我想獲得相應日期的前一個日期。即如果我有約會2014年1月31日(我使用的格式31012014存儲在分貝),那麼我應該得到日期30012014.

我知道如何得到昨天的日期,例如下面的代碼

Calendar calendar = Calendar.getInstance(); 
    calendar.add(Calendar.DATE, -1); 
    DateFormat dateFormat = new SimpleDateFormat("ddMMyyyy", Locale.getDefault()); 
    String yesterdayAsString = dateFormat.format(calendar.getTime()); 

它給日期與今天比較,但我希望與其他有效日期相比的日期。

那麼如何得到這一點。

回答

7

你必須使用SimpleDateFormat來轉換字符串>日期,日期>日曆之後,例如;

String sDate = "31012014"; 
SimpleDateFormat dateFormat = new SimpleDateFormat("ddMMyyyy", Locale.getDefault()); 
Date date = dateFormat.parse(sDate); 
Calendar calendar = Calendar.getInstance(); 
calendar.setTime(date); 
calendar.add(Calendar.DATE, -1); 
String yesterdayAsString = dateFormat.format(calendar.getTime()); 
+0

不錯的答案,謝謝,接受 – 2015-03-31 13:12:52

0

你就擁有了一切正確的,除非你「加上」 -1前幾天,你需要將其設置爲你想要的日期(找到一個日期之前的前):

Calendar calendar = Calendar.getInstance(); 
calendar.set(2014, Calendar.JUNE, 9); 
calendar.add(Calendar.DATE, -1); 
... 
0

首先就像提示一樣,最好將日期存儲爲時間戳,這樣就不會依賴時間格式。

至於你的問題,只要保持在一個變量的當前日期,一旦按鈕被點擊它發送給你的方法,然後減去額外的一天

Calendar curDate = Calendar.getInstance(); 
curDate.add(Calendar.DATE, -1); 

,並使用您的CURDATE變量從此

2

使用它,它的工作和測試代碼。

private String getPreviousDate(String inputDate){ 
       inputDate = "15-12-2015"; // for example 
       SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy"); 
       try { 
        Date date = format.parse(inputDate); 
        Calendar c = Calendar.getInstance(); 
        c.setTime(date); 

        c.add(Calendar.DATE, -1); 
        inputDate = format.format(c.getTime()); 
        Log.d("asd", "selected date : "+inputDate); 

        System.out.println(date); 
       } catch (Exception e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
         inputDate =""; 
       } 
       return inputDate; 
      } 
+0

很好的答案,謝謝 – 2015-03-31 13:13:52

+0

歡迎@ShirishHerwade :) – Yogendra 2015-03-31 13:14:48

相關問題