2014-01-16 17 views
0

当我尝试将字符串转换为日期的异常:Android的字符串转换为日期异常

String da="16-Jan-2014 10:25:00"; 
SimpleDateFormat sdf = new SimpleDateFormat("dd-mmm-yyyy HH:mm:SS", Locale.ENGLISH); 
Date dd = sdf.parse(da); 

什么错在我的代码吗?

java.text.ParseException: Unparseable date:"16-Jan-2014 10:25:00" (at offset 3) 

在此先感谢...

回答

1

考虑例

String text = "2014-01-17T00:00:00.000-0500"; 
DateFormat sdf = new SimpleDateFormat("yyyy-MMM-dd'T'HH:mm:ss.SSSZ"); 

希望在此之后能够帮助

+0

这是行不通的。你仍然需要三个M。两个MM将以这种格式解析日期:16-01-2014。但是给定的格式有三个字符的月份。 –

+0

@Tim Kranen正确我错过了它:) – nitesh

1

正如@Tim Kranen酒店所提,月份格式为大写字母。所以它应该是MMM

要理解格式化几个月考虑这短短的代码 -

/* 
    Formatting month using SimpleDateFormat 
    This example shows how to format month using Java SimpleDateFormat class. Month can 
    be formatted in M, MM, MMM and MMMM formats. 
*/ 


import java.text.SimpleDateFormat; 
import java.util.Date; 

public class FormattingMonth { 

    public static void main(String[] args) { 

    //create Date object 
    Date date = new Date(); 

    //formatting month in M format like 1,2 etc 
    String strDateFormat = "M"; 
    SimpleDateFormat sdf = new SimpleDateFormat(strDateFormat); 

    System.out.println("Current Month in M format : " + sdf.format(date)); 

    //formatting Month in MM format like 01, 02 etc. 
    strDateFormat = "MM"; 
    sdf = new SimpleDateFormat(strDateFormat); 
    System.out.println("Current Month in MM format : " + sdf.format(date)); 

    //formatting Month in MMM format like Jan, Feb etc. 
    strDateFormat = "MMM"; 
    sdf = new SimpleDateFormat(strDateFormat); 
    System.out.println("Current Month in MMM format : " + sdf.format(date)); 

    //formatting Month in MMMM format like January, February etc. 
    strDateFormat = "MMMM"; 
    sdf = new SimpleDateFormat(strDateFormat); 
    System.out.println("Current Month in MMMM format : " + sdf.format(date)); 

    } 
} 

/* 
Typical output would be 
Current Month in M format : 2 
Current Month in MM format : 02 
Current Month in MMM format : Feb 
Current Month in MMMM format : February 
* 

检查Java Date Formatting举例如上所述理解的格式。