永发信息网

try { String date = "2012-12-21"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy年M

答案:6  悬赏:70  手机版
解决时间 2021-04-05 18:46
  • 提问者网友:临风不自傲
  • 2021-04-04 23:38
try { String date = "2012-12-21"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
最佳答案
  • 五星知识达人网友:鱼忧
  • 2021-04-05 01:04
首先你要搞清楚,你到底要干什么。是把2012-12-21显示成:2012年12月21日么?
你给的 String date = "2012-12-21"的年月日是用-隔开的,而你叫SimpleDateFormat 去找一个以“年,月,日”格式的String 转换成Date类型,它肯定找不到。
你只能先把String date = "2012-12-21"转换成date,然后再把date类型的日期转成你要显示的:
2012年12月21日。代码如下:
try {
String date = "2012-12-21";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date d = sdf.parse(date);
DateFormat df = new SimpleDateFormat("yyyy月MM年dd日");
System.out.println(df.format(d));
} catch (ParseException e) {
System.out.println("e.getMessage() : " + e.getMessage());
e.printStackTrace();
}
全部回答
  • 1楼网友:大漠
  • 2021-04-05 05:02
楼上正解
  • 2楼网友:人類模型
  • 2021-04-05 03:28
sdf转换的要是2012-12-21 00:00:00格式的吧!你那样不行的 不完整!
  • 3楼网友:不甚了了
  • 2021-04-05 01:55
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  • 4楼网友:一袍清酒付
  • 2021-04-05 01:49
("yyyy年MM月dd日");这里有问题吧
  • 5楼网友:英雄的欲望
  • 2021-04-05 01:44
如果你想输出为系统默认的类型的话
  修改:
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

  如果你想输出为 yyyy年MM月dd日 的话
  使用日历Calendar 把String类型的切成Calendar赋值

  Calendar calendar = new GregorianCalendar(2012, 12-1, 21);
  System.out.println(sdf.format(calendar.getTime()));
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯