将字符串解析为日期并计算两个日期之间的差异

时间:2013-12-04 15:54:28

标签: android string date

好吧,我在Android上工作,我从JSon获得了一个String格式的日期,格式为:“dd-MM-yyyy”,今天是系统的日期,所以我不能得到两个日期之间的差异。我做到了。

SimpleDateFormat df1 = new SimpleDateFormat("dd-MM-yyyy",java.util.Locale.getDefault());
String fechaActual = df1.format(c.getTime());
System.out.println("=========> Date Today => "+fechaActual); 

fechaEvaluacion = json_data.getString("fechaEvaluacion");
Date fechaEvDate = Date.valueOf(fechaEvaluacion);
long fechaInicial = fechaEvDate.getTime();
long fechaFinal = xDate.getTime(); 
long diferencia =  ( fechaFinal- fechaInicial ); 
final long days = diferencia / 24;
System.out.println("The difference between the two days is: "+days);
if(days < 3){
    runOnUiThread(new Runnable() {
        public void run() {
            Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
            vibrator.vibrate(200);
            Toast toast2 = Toast.makeText(getApplicationContext(), "Tienes "+tipoEvaluacion+" de: "+nombreAsignatura+" en "+days+", el día:  "+fechaEvaluacion, Toast.LENGTH_LONG);
            toast2.setGravity(Gravity.TOP|Gravity.RIGHT, 0, 0);
            toast2.show();
        }
    });
}

最后在变量“天”中我得到了一些麻木,如-13140000000或13176000000

我想要一些帮助,我为解析日期尝试了很多事情而没有结果。

1 个答案:

答案 0 :(得分:0)

你应该这样分开

final long days = diferencia / (1000 * 60 * 60 * 24);