moins 1 heure à DateTime en utilisant Joda Time

Je veux juste soustraire 1 heure à partir d'un DateTime j'ai essayé de regarder sur Google et j'ai trouvé qu'il existe une méthode appelée moins que prend un exemplaire de la date et de prendre une durée spécifique, ici: http://www.joda.org/joda-time/apidocs/org/joda/time/DateTime.html#minus(long)

Mais je ne sais pas comment l'utiliser et je peux pas trouver un exemple sur l'internet.

Voici mon code:

String string1 = (String) table_4.getValueAt(0, 1);
    String string2= (String) table_4.getValueAt(0, 2);

    DateTimeFormatter dtf = DateTimeFormat.forPattern("hh:mm a").withLocale(Locale.ENGLISH);
    DateTime dateTime1 = dtf.parseDateTime(string1.toString());
    DateTime dateTime2 = dtf.parseDateTime(string2.toString());

    final String oldf = ("hh:mm a");
    final String newf= ("hh.mm 0");
    final String newf2= ("hh.mm a");
    final String elapsedformat = ("hh.mm");

    SimpleDateFormat format2 = new SimpleDateFormat(oldf);
    SimpleDateFormat format2E = new SimpleDateFormat(newf); 

    Period timePeriod = new Period(dateTime1, dateTime2);

    PeriodFormatter formatter = new PeriodFormatterBuilder()

     .appendHours().appendSuffix(".")
     .appendMinutes().appendSuffix("")
     .toFormatter();

    String elapsed = formatter.print(timePeriod);

    table_4.setValueAt(elapsed,0,3);

    DecimalFormat df = new DecimalFormat("00.00");
    System.out.println(dateTime1);
    table_4.setValueAt("", 0, 4);
    table_4.setValueAt("", 0, 5);

Des Données De L'Échantillon:

    dateTime1: 08:00 AM
    dateTime2: 05:00 PM

la période de 9 heures. mais je veux qu'il soit de 8 heures seulement parce que je veux soustraire de la pause déjeuner, dans mon programme.

j'ai essayé avec ce code à la con:

dateTime1.minus(-1) 

J'ai aussi essayé d'analyse string1 à double afin que je puisse le soustraire par un.

double strindtoD = Integer.parseInt(string1);

J'ai aussi essayé de faire un autre DateTime et la période d'utilisation pour obtenir la différence des deux temps

String stringOneHour = ("01:00 AM");
DateTime dateTime3 = dtf.parseDateTime(stringOneHour.toString());
Period timePeriod = new Period(dateTime3, dateTime1);

source d'informationauteur Maguzu