Avatar billede encorez Nybegynder
10. februar 2014 - 15:39 Der er 3 kommentarer og
1 løsning

Træk dage fra i en dato

Hej

Jeg har en dato som en String, eksempelvis i denne form "2011-09-23". Den skal jeg for eksempel trække 25 dage fra, så jeg får "2011-08-29" (eller der omkring).

Det burde være en nem operation, men når jeg søger på det, er der 100 forslag til at gøre den slags.

Jeg vil gerne have forslag til at lave den nemme operation og det skal gerne være med et kort eksempel.

På forhånd mange tak for hjælpen
Avatar billede arne_v Ekspert
10. februar 2014 - 15:53 #1
Forslag:


import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class AddDays {
    public static void main(String[] args) throws ParseException {
        String s1 = "2011-09-23";
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        System.out.println(s1);
        Date d1 = df.parse(s1);
        Calendar cal = new GregorianCalendar();
        cal.setTime(d1);
        cal.add(Calendar.DATE, -25);
        Date d2 = cal.getTime();
        String s2 = df.format(d2);
        System.out.println(s2);
    }
}
Avatar billede encorez Nybegynder
11. februar 2014 - 14:42 #2
Perfekt, virker lige som det skal :)

Læg et svar som tak for hjælpen
Avatar billede arne_v Ekspert
11. februar 2014 - 14:57 #3
svar
Avatar billede arne_v Ekspert
11. februar 2014 - 14:59 #4
du kan nok korte koden lidt ved at droppe nogle temporaere variable, men jeg valgte at lade kode vaere meget klar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester