19

我试图将字符串转换为日期。我的字符串如 20130526160000。我想要像 dd MMM yyyy hh:mm 这样的日期

例如-2013 年 5 月 26 日 16:00

4

5 回答 5

52

您可以SimpleDateFormat用于将字符串解析为日期。

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
try {
  Date d = sdf.parse("20130526160000");
} catch (ParseException ex) {
  Log.v("Exception", ex.getLocalizedMessage());
}

现在您可以将您的Date对象转换回您所需格式的字符串,如下所示。

sdf.applyPattern("dd MMM yyyy hh:mm");
System.out.println(sdf.format(d));
于 2013-05-23T11:55:43.357 回答
26

您可以使用以下方式。

String strDate = "2013-05-15T10:00:00-0700";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");
Date date = dateFormat.parse(strDate);
System.out.println(date);

输出是:Wed May 15 10:00:00 IST 2013 我希望这会对你有所帮助。

于 2013-05-23T11:53:40.007 回答
5
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss");  
    Date date=null;
    try {
        date = formatter.parse("20130526160000 ");
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }  
    formatter = new SimpleDateFormat("dd MMM yyyy HH:mm"); 

    System.out.println("Date :" +formatter.format(date));  
于 2013-05-23T12:01:17.343 回答
0

您可以尝试以下代码来解析字符串到日期..

java.util.Date date=null;


        try {
            date = new SimpleDateFormat("yyyymmddhhmmss", Locale.ENGLISH).parse("20130526160000");

            System.out.println(date);// result will 'Sat Jan 26 16:00:00 IST 2013'

            //now you can use Date class function i.e.

            //date.getDay();
            //date.getMonth();
            //date.getYear();



        } catch (ParseException e) {
            System.out.println(">>>>>"+"date parsing exception");
            //System.out.println(e.getMessage());
            //e.printStackTrace();
        }
于 2013-05-23T12:02:41.337 回答
0

试试这个,我认为这会对你有所帮助。

   long _date = Long.parseLong("20130526160000");
 SimpleDateFormat _dateformat = new SimpleDateFormat("dd MMM yyyy hh:mm");
 System.out.println("Date is:" + _dateformat.format(new Date(_date)));
于 2013-05-23T12:14:58.943 回答