嗨,我想打印在android textview中的「星期一23日」格式的日期,我也想打印前幾天。例如:「4月22日星期日」,「4月21日星期六」。我發現了很多,但無法獲得任何能以相同格式工作的東西。提前Thanx。以特定格式打印java日期
回答
看看到: SimpleDateFormat
PS: 要回答喬恩斯基特問題:
private static final String DATE_FORMAT_ND = "EEE d'nd' MMMM";
private static final String DATE_FORMAT_RD = "EEE d'rd' MMMM";
private static final String DATE_FORMAT_ST = "EEE d'st' MMMM";
private static final String DATE_FORMAT_TH = "EEE d'th' MMMM";
private static final String DATE_DAY_NUMBER = "d";
public static String FormatDate(Date date_)
{
String format = null;
SimpleDateFormat dayNumberFormat = new SimpleDateFormat(DATE_DAY_NUMBER);
String daySource = dayNumberFormat.format(date_);
int day = Integer.parseInt(daySource);
switch(day)
{
case 1:
case 21:
case 31:
format = DATE_FORMAT_ST;
break;
case 2:
case 22:
format = DATE_FORMAT_ND;
break;
case 3:
case 23:
format = DATE_FORMAT_RD;
break;
case 4:
case 24:
case 5:
case 25:
case 6:
case 26:
case 7:
case 27:
case 8:
case 28:
case 9:
case 29:
case 10:
case 30:
format = DATE_FORMAT_TH;
break;
}
SimpleDateFormat dateFormat = new SimpleDateFormat(format);
String result = dateFormat.format(date_);
return result;
}
只有簡單的日期格式和編碼的一點點...
對於昨天的日期這樣調用它: - date.setText(FormatDate(new Date(new Date()。getTime() - 86400000)));
這將如何產生序數部分(「nd」等)?我不認爲*有什麼會自動做到的。 –
再次查看答案......但是從我的角度來看,這個資源可以用來編寫這段代碼的人沒有任何問題...... – Maxim
對,這好多了 - 它實際上回答了問題。雖然這可能值得明確指出這隻適用於英語。 (我會在構造'SimpleDateFormat'時指定。) –
你可以試試這個:
DateFormat format = new SimpleDateFormat("EEEE d MMMM yyyy");
System.out.println(format.format(new Date()));
或檢查出這個Human Friendly dates
這不包括序數部分,這是棘手的一點。 –
- 1. 在Java中以特定格式打印日期時間?
- 2. 以特定格式格式化日期
- 3. 以特定格式打印二叉樹
- 4. 以java格式打印行
- 5. 日期轉換以特定格式
- 6. 日期XMLGregorianCalendar以及特定格式
- 7. 以特定格式比較日期
- 8. 以特定格式顯示日期
- 9. PHP以特定格式驗證日期
- 10. 通過NSLog格式打印日期
- 11. 日期格式打印不正確
- 12. PHP打印日期變量格式
- 13. 格式化日期到特定格式
- 14. 格式化日期爲特定格式
- 15. 格式化日期到特定格式
- 16. 打印特定格
- 17. 的java格式的特定日期以T字
- 18. 解析日期以特定格式的Java
- 19. Java新日期()打印
- 20. Logstash過濾日期,以匹配特定的日期格式
- 21. 用特殊格式打印當前UTC日期時間
- 22. 在java中將日期格式化爲特定格式?
- 23. 以特定格式格式化日期時間
- 24. 轉換日期時間格式以特定格式在SSIS
- 25. javascript日期格式到本地時區以特定的格式
- 26. 循環通過日期和打印格式日期
- 27. 如何打印從特定日期到odoo 10中特定日期的報告?
- 28. 代碼塊不打印特定格式
- 29. 從CSS打印的特定格式
- 30. 如何以日期時間格式打印秒數?
你的問題建議你已經試過* *的東西 - 所以請告訴我們,你已經嘗試什麼,發生了什麼事。你卡在哪裏?我*懷疑*它與序數部分(「rd」,「st」,「nd」,「th」等) - 這很難在所有語言環境中正確地獲取。其餘的應該是合理簡單的。 –
是的,如何獲得序數部分..我已經嘗試過現在字符串month_name = calendar.getDisplayName(Calendar.MONTH,Calendar.SHORT,Locale.getDefault()); // Locale.US); String day_name = calendar.getDisplayName(Calendar.DAY_OF_WEEK,Calendar.SHORT,Locale.getDefault()); // Locale.US);正如@vinay maneti所暗示的那樣。它的工作原理 – Sydroid
@Sydroid - 如果這個答案適合你,那就繼續接受吧。 :)不要在這裏發佈代碼作爲評論。 – SudoRahul