Java Calcular el tiempo hasta el evento desde la hora actual

Estoy tratando de calcular la cantidad de tiempo hasta el comienzo de un partido de fútbol.

Esto es lo que sé:

Tengo el tiempo de un evento:2016-08-16T19: 45: 00ZSé que el formato de cadena es "aaaa-M-dd'T'h: m: s'Z '"Sé que la zona horaria es "CET".

Quiero poder calcular la diferencia de la hora actual a esta fecha en días.

Esto es lo que he intentado:

    String gameDate = "2016-03-19T19:45:00'Z'"
    DateFormat apiFormat = new SimpleDateFormat("yyyy-M-dd'T'h:m:s'Z'");
    apiFormat.setTimeZone(TimeZone.getTimeZone("CET"));
    Date dateOfGame = apiFormat.parse(gameDate);

    DateFormat currentDateFormat = new SimpleDateFormat("yyyy-M-dd'T'h:m:s'Z'");
    currentDateFormat.setTimeZone(TimeZone.getTimeZone(userTimezone));
    Date currentDate = apiFormat.parse(currentDateFormat.format(new Date()));

    long lGameDate = dateOfGame.getTime();
    long lcurrDate = currentDate.getTime();
    long difference = lGameDate - lcurrDate;
    Date timeDifference = new Date(difference);

    String daysAway = new SimpleDateFormat("d").format(timeDifference);
    Integer intDaysAway = Integer.parseInt(daysAway);

Probablemente se esté preguntando por qué no solo obtengo la fecha del juego (8) y resta la fecha actual (19). No hago eso en el caso de que la fecha actual sea el 29 y la fecha del juego sea el 3 del mes siguiente.

Respuestas a la pregunta(7)

Su respuesta a la pregunta