SimpleDateFormat解析的空指针异常

时间:2016-10-03 07:21:34

标签: java android nullpointerexception simpledateformat

我从日历中获取日期并使用

转换其格式
    SimpleDateFormat sdf1 = new SimpleDateFormat("MM/dd/yyyy");
    Date date = null;
    try {
        date = sdf1.parse(datevalue);
    } catch (ParseException e) {
        e.printStackTrace();
    }

    if(date != null) {
        Date d = new Date(date.getTime());
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
        return sdf.format(d);
    }

    return "";

但是我在某些设备上遇到了崩溃,而对于某些设备来说它运行正常 我不知道为什么它只在某些设备上发生。

我在Fabric报告中得到了这个:

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference    
       at java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1044)
       at java.text.DateFormat.parse(DateFormat.java:577)
       at com.app.appUtilities.Utilities.convertDateFormat(Utilities.java:34)

请帮帮我。

1 个答案:

答案 0 :(得分:0)

    String dateStr = "04/05/2010"; 

    SimpleDateFormat curFormater = new SimpleDateFormat("dd/MM/yyyy"); 

    try {
        dateObj = curFormater.parse(dateStr);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } 
    SimpleDateFormat postFormater = new SimpleDateFormat("MMMM dd, yyyy"); 

    String newDateStr = postFormater.format(dateObj); 
    Toast.makeText(getApplicationContext(), newDateStr, 1).show();