0
我知道有一百萬個類似的問題,但我很難找到正確的答案,所以如果有人能給我直接答案,我會很感激。計算兩個不同格式日期之間的時間差
我從後端字符串一些日期格式爲:
String days = "2016-12-01T15:43:42.2737987+01:00";
我的簡單日子格式如下:
private DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.getDefault());
我試圖讓今天的日期是這樣的:
String currentDateandTime = sdf.format(new Date());
和我在天計算差分方法如下:
public void daysBetween(String date1, String date2) {
Date mDate1;
Date mDate2;
try {
mDate1 = sdf.parse(date1);
mDate2 = sdf.parse(date2);
dateDiff = (mDate1.getTime() - mDate2.getTime())/(24 * 60 * 60 * 1000);
days = String.valueOf(dateDiff);
} catch (Exception e) {
e.printStackTrace();
}
}
所以這裏的問題是,我無法解析「天」的字符串,因爲,有時我得到7個位數秒,有時是2,依此類推......有沒有一種方法來調整這兩個日期爲了得到不同的日子?
使用時區爲「YYYY-MM-dd'T'HH:ss.SSSSSSS'Z':MM」日期格式,這應該爲毫秒添加7個字段。如果該功能無效,請使用2個不同的formaters,一個用於2,另一個用於7個數字 – X3Btel
如果您不介意導入庫,joda具有良好的時差功能。 – nasch
有7個字段或任何數字的東西,我不知道他們會有多少人......我正在處理的這個項目已經很大,所以添加更多的庫不是真正的選擇,如果它不是必要的:) ...有沒有辦法以某種方式排除秒和這個+01:00? – joe