-2

我有日期和时间的值

日期=2013/11/16

我想把它转换成以下格式

像这样

“2013 年 11 月 16 日,星期六”

请帮助我提前谢谢

4

5 回答 5

0

首先,您可以使用一个名为JodaTime的惊人的日期时间库。它使 Java 中的所有日期时间操作变得更加容易。

使用乔达时间:

DateTime dt = DateTime.parse("2013/11/16", DateTimeFormat.forPattern("YYYY/MM/dd"));
DateTimeFormatter dtf = DateTimeFormat.forPattern("dd MMMM YYYY, EEEE");
String date = dt.toString(dtf);
于 2013-11-13T11:50:08.990 回答
0

试试这个,它应该工作:

SimpleDateFormat fmt = new SimpleDateFormat("yyyy/MMdd");
            Date d;
            try {
                d = fmt.parse(st);
            } catch (ParseException e) {

                e.printStackTrace();
                return null;
            }
            SimpleDateFormat prnt = new SimpleDateFormat("dd MMM yyyy");
            String newDate=prnt.format(d)
于 2013-11-13T11:52:25.320 回答
0

使用

DateFormat format = android.text.format.DateFormat.getLongDateFormat(context);
format.format(date)

你得到Saturday, November 16, 2013. 如果您想坚持发布的格式,可以按照建议使用 SimpleDateFormat:

SimpleDateFormat fmt = new SimpleDateFormat("dd M yyyy, E",context.getResources().getConfiguration().locale);
于 2013-11-13T11:39:53.867 回答
0

尝试像这样使用 SimpleDateFormat ..

String dtStart = "2013/11/16";
SSimpleDateFormat format = new SimpleDateFormat("dd MMMM yyyy,EEEE");
try {
    date = format.parse(dtStart);
    System.out.println("Date ->" + date);
} catch (Exception e) {
    e.printStackTrace();
}
于 2013-11-13T11:40:11.633 回答
0

试试下面的代码

Date now = new Date(System.currentTimeMillis());
SimpleDateFormat sdf = new SimpleDateFormat("dd MMMM yyyy, EEEE");
String date = sdf.format(now);
Log.d("Home", date);

在Android Developer上阅读有关简单日期格式的更多信息。

于 2013-11-13T11:40:29.513 回答