Calculer la Date/Heure Différence en Java considérant AM/PM

Je veux calculer la différence entre deux date/heure en java en utilisant la Date et le Calendrier des classes. Le format que j'ai, c'est "2012-01-24 12:30:00".

J'ai ajouté ma propre méthode et aussi une recherche sur google de travailler avec les autres, mais je n'ai pas le droit de faire allusion à la poignée de AM et PM valeurs.

La date/heure différence suis troublé à chaque fois que les temps ont 12(AM/PM). Par exemple si j'ai la date/l'heure "2012-01-24 12:30:00" et "2012-01-24 02:30:00", il montre la différence est de 10 heures.

Considérant le code de la ce lien comment peut-il être modifié pour gérer AM et PM.

Pour convertir la Chaîne de date à Date je utiliser le code suivant:

    String sessionTimeStart = "2012-01-24 12:30:00 PM";
    String sessionTimerEndOrCurrent = "2012-01-24 02:30:00 PM";
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss a"); 

    Date d1 = null;
    Date d0 = null; 
    try {
        d1 = format.parse(sessionTimeStart);
        d0 = format.parse(sessionTimerEndOrCurrent);
    } catch (ParseException e1) {
        //TODO Auto-generated catch block
        e1.printStackTrace();
    }
Comment faire pour convertir la chaîne en Date objet? Et comment calculez-vous la différence? Si vous utilisez le code que vous avez lié, comment appelez-vous cela?
J'ai mis à jour le post

OriginalL'auteur rizzz86 | 2012-01-25