0
現在這一個困擾我很多......的SimpleDateFormat格式2「相同」日期不同
考慮以下2個日期
Fri Dec 11 00:00:00 CET 2015
Fri Dec 11 23:59:59 CET 2015
當我把這些日期都爲SimpleDateFormat的我得到2個不同的結果...
Date dateFrom = Fri Dec 11 00:00:00 CET 2015
Date dateTo = Fri Dec 11 23:59:59 CET 2015
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
String formatedFromDate = formatter.format(dateFrom);
String formatedToDate = formatter.format(dateTo);
System.out.println(formatedFromDate);
System.out.println(formatedToDate);
OUTPUT:
1st: 11/12/2015
2nd: 11-12-2015
現在,如果有人能夠對這裏發生的事情有所瞭解,我會非常感激。
PS。我試圖爲其他日期創建單獨的格式化程序,但效果仍然相同。
編輯:
確定下面的代碼是css導出文件的一部分。
// os.getStart() returns = Fri Dec 11 00:00:00 CET 2015
// os.getEnd() returns = Fri Dec 11 23:59:59 CET 2015
//
// os.getStart() & os.getEnd() looks like
Date start;
Date end;
// SEPARATE PACKAGE
public Date getStart() {
if(start==null) {
log.warning("Null start!");
start=new Date();
}
return start;
}
public Date getEnd() {
if(end==null) {
log.warning("Null end!");
end=new Date();
}
return end;
}
// setDates are called when date from database is taken - so no rocket science here
// CSV EXPORT FILE
Date dateFrom = os.getStart();
Date dateTo = os.getEnd();
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
String formatedFromDate = formatter.format(dateFrom);
String formatedToDate = formatter.format(dateTo);
if(names==null) {
return;
}
Iterator it;%><%= title %>,<%= messages.getString("calls") %>,<%= messages.getString("answered") %><%= (hasTimes) ? ","+messages.getString("h_time") : "" %>,From Date,To Date<%
it=breakdown.keySet().iterator();
while(it.hasNext()) {
Integer idInt=(Integer)it.next();
String key=(String)names.get(idInt);
OrderlyStats.Breakdown value=(OrderlyStats.Breakdown)breakdown.get(idInt);
%>
<%= dateFrom %> //<----Fri Dec 11 00:00:00 CET 2015
<%= dateTo %> //<----Fri Dec 11 23:59:59 CET 2015
<%= ("Queue".equals(type)) ? displayNames.get(key) : key %>,<%= value.calls %>,<%= value.answered %><%= (hasTimes) ? ","+Helper.formatDouble(value.time,1) : "" %>, <%= formatedToDate %>,<%= formatedToDate %><% } %>
必須有一個錯誤,我只是測試你的代碼,同時接受時間'11月12日/ 2015' –
你寫formatedToDate但打印: 你可以在你的日期格式指定目標時區formataedToDate – Rustam
@Rustam它只是寫給SO的時候發生的一個錯字。 –