我得到的结果是 2012 年 12 月 1 日,但我想显示为“2012 年 12 月 1 日星期六”,我的代码如下,如果你有,请给我一个解决方案......
Date date = new Date();
myDateString = DateFormat.getDateFormat(getApplicationContext()).format(date).toString();
dateTxt.setText(myDateString);
我得到的结果是 2012 年 12 月 1 日,但我想显示为“2012 年 12 月 1 日星期六”,我的代码如下,如果你有,请给我一个解决方案......
Date date = new Date();
myDateString = DateFormat.getDateFormat(getApplicationContext()).format(date).toString();
dateTxt.setText(myDateString);
请参阅此示例
String[] formats = new String[] {
"yyyy-MM-dd",
"yyyy-MM-dd HH:mm",
"yyyy-MM-dd HH:mmZ",
"yyyy-MM-dd HH:mm:ss.SSSZ",
"yyyy-MM-dd'T'HH:mm:ss.SSSZ",
};
for (String format : formats) {
SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.US);
System.err.format("%30s %s\n", format, sdf.format(new Date(0)));
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
System.err.format("%30s %s\n", format, sdf.format(new Date(0)));
}
在 PDT 时区运行时会产生此输出:
yyyy-MM-dd 1969-12-31
yyyy-MM-dd 1970-01-01
yyyy-MM-dd HH:mm 1969-12-31 16:00
yyyy-MM-dd HH:mm 1970-01-01 00:00
yyyy-MM-dd HH:mmZ 1969-12-31 16:00-0800
yyyy-MM-dd HH:mmZ 1970-01-01 00:00+0000
yyyy-MM-dd HH:mm:ss.SSSZ 1969-12-31 16:00:00.000-0800
yyyy-MM-dd HH:mm:ss.SSSZ 1970-01-01 00:00:00.000+0000
yyyy-MM-dd'T'HH:mm:ss.SSSZ 1969-12-31T16:00:00.000-0800
yyyy-MM-dd'T'HH:mm:ss.SSSZ 1970-01-01T00:00:00.000+0000
所以使用这种格式:
"EEEE, MMMM dd, yyyy" -> "Monday, April 6, 1970"
有关完整的详细信息,请参阅这些参考资料
http://developer.android.com/reference/java/text/SimpleDateFormat.html
导入 java.text.SimpleDateFormat;导入 java.util.Date;导入 java.util.Locale;
字符串格式 = "EEEE, MMMM dd, yyyy";
今天的日期 = new Date(); SimpleDateFormat sdf = new SimpleDateFormat(Format, Locale.ENGLISH); System.err.format("%30s %s\n", Format, sdf.format(today));
这是打印EEEE, MMMM dd, yyyy Saturday, December 01, 2012
检查您的导入,如果问题仍然存在,请尝试发布您的新代码。