2014-10-10 82 views
0

我有兩個日期時間09/01/2014和09/10/2014.我想檢查日期之間的日期。 我寫功能女巫可以更改日期時間格式android天數在兩個日期時間之間

public static String dateFormatterforLukka(String inputDate) { 

    String inputFormat = "MM/dd/yyyy"; 
    String outputFormat = "d MMM"; 

    Date parsed = null; 
    String outputDate = ""; 
    try { 
     SimpleDateFormat df_input = new SimpleDateFormat(inputFormat, 
       new Locale("en", "US")); 
     SimpleDateFormat df_output = new SimpleDateFormat(outputFormat, 
       new Locale("en", "US")); 


     parsed = df_input.parse(inputDate); 
     outputDate = df_output.format(parsed); 
    } catch (Exception e) { 
     outputDate = inputDate; 
    } 
    return outputDate; 
} 

,但我不知道是否有人知道的解決方案,請幫助我

+0

結果是什麼?有沒有錯誤? – SearchForKnowledge 2014-10-10 13:33:23

+0

你嘗試了什麼?你只是解析兩個日期... – mithrop 2014-10-10 13:34:20

+0

可能重複的[日期差異在java](http://stackoverflow.com/questions/19675980/date-difference-in-java) – 2014-10-10 13:34:40

回答

0

你可以試試這個功能:

public String getDateDiffString(Date dateOne, Date dateTwo) 
{ 
    long timeOne = dateOne.getTime(); 
    long timeTwo = dateTwo.getTime(); 
    long oneDay = 1000 * 60 * 60 * 24; 
    long delta = (timeTwo - timeOne)/oneDay; 

    if (delta > 0) { 
     return "dateTwo is " + delta + " days after dateOne"; 
    } 
    else { 
     delta *= -1; 
     return "dateTwo is " + delta + " days before dateOne"; 
    } 
} 

Courtesy Link

+1

謝謝它的工作。例如不同的是9天。現在我怎麼可以寫增量方法1 2 3 4等.... – Beka 2014-10-10 14:04:56

+0

@Beka不客氣。請澄清請求。另外,我建議開一個新問題,讓更多的人瞭解你的新請求。快樂編碼! – SearchForKnowledge 2014-10-10 14:19:21

+0

thanks.i'll打開新問題 – Beka 2014-10-10 14:26:22

0

而不是使用2 simpledate格式的,我可以怎樣解決我的問題 ,你可以解析他們在解析後的同一日期格式,你會得到2個日期。你可以找到與毫秒區別:

`

long differenceAsMs = higherDate.getTime() - lowerDate.getTime(); 
int differenceAsDay = differenceAsMs/(1000 * 60 * 60 * 24); 

` 希望這有助於。

0

使用喬達時庫:JodaOrg/joda-time · GitHub

LocalDate date1 = new LocalDate(2014, 5, 25); 
LocalDate date2 = new LocalDate(2014, 6, 15); 

Period period = new Period(date1, date2, PeriodType.yearMonthDay()); 

int daysBetween = period.getDays(); 
int monthsBetween = period.getMonths(); 
int yearsBetween = period.getYears(); 

注意,期間將返回負數,如果date2的日期是date1的日期之前,否則它會返回正數。

相關問題