Avatar billede peterfup Nybegynder
26. marts 2002 - 16:28 Der er 7 kommentarer og
2 løsninger

Sætte dato+tid til nuværende klokkeslæt...

Jeg vil lave en String der indeholder datoen og klokkeslættet for tidspunktet den er oprettet på.
fx:
"26-03-2002-16-26-00"
For den 26. marts 2002 kl 16.26.00

Jeg har prøvet med:
  Calendar cal = Calendar.getInstance();

  System.out.println(cal.MONTH);
  System.out.println(cal.get(DAY_OF_MONTH));

bare for at teste det. Måneden returnerer 2, hvilket vel er godt nok når man skal lægge 1 til, men dagen returnerer 3, som jeg overhovedet ikke forstår. Hvis jeg laver en toString() på cal kan jeg se at DAY_OF_MONTH's værdi er 26...

Er der nogen der kan give et lille eksempel på hvordan jeg laver den her Streng?

/PeterFup
Avatar billede jakoba Nybegynder
26. marts 2002 - 16:39 #1
hvorfor ikke blot:

  System.out.println(cal.MONTH);
  System.out.println(cal.DAY_OF_MONTH);

get ønsker en integer-parameter, så med den anden slår du op på felt nr 26 (hvad det så er)

mvh JakobA
Avatar billede peterfup Nybegynder
26. marts 2002 - 16:55 #2
Sorry...
Der skulle ikke stå get i den linie... Der være bare en rest fra et af mine utallige forsøg på at få det til at virke! :-)

Det er cal.DAY_OF_MONTH der returnerer 3...
Avatar billede jakoba Nybegynder
26. marts 2002 - 17:03 #3
OK.  DAY_OF_MONTH skulle være synonym for DATE, har du prøvet med:

  System.out.println(cal.MONTH);
  System.out.println(cal.DATE);

Må vi se resultatet af din cal.toString()
Avatar billede peterfup Nybegynder
26. marts 2002 - 17:27 #4
java.util.GregorianCalendar[time=1017159977800,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=java.util.SimpleTimeZone[id=Europe/Copenhagen,offset=3600000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=7200000,endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=7200000],firstDayOfWeek=2,minimalDaysInFirstWeek=4,ERA=1,YEAR=2002,MONTH=2,WEEK_OF_YEAR=13,WEEK_OF_MONTH=4,DAY_OF_MONTH=26,DAY_OF_YEAR=85,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=5,HOUR_OF_DAY=17,MINUTE=26,SECOND=17,MILLISECOND=800,ZONE_OFFSET=3600000,DST_OFFSET=0]

Et sted herinde står der: DAY_OF_MONTH = 26

Jeg har ozze lige prøvet en gregorian, og sagt:

GregorianCalendar cal = new GregorianCalendar();

   
    System.out.println(cal.get(Calender.DAY_OF_MONTH));
    System.out.println(cal.toString());

men så siger den at DAY_OF_MONTH ikke er defineret...
Avatar billede jakoba Nybegynder
26. marts 2002 - 18:07 #5
Den der med .get er helt YT.
det ser ud til at det felt du får returneret er DAY_OF_WEEK feltet (det ligger også lige efter). Men det skulle betyde at
1) der har været en ændring i sourcekoden til kalendar objektet. (OG man var dum nok til at ændre position på eksisterende variabler, langt ude.)
2) din browser bruger en VM der ikke passer sammen med den java version du har. (Det er set før)

hvad sagde den da du prøvede med  cal.DATE

mvh JakobA
Avatar billede disky Nybegynder
26. marts 2002 - 18:30 #6
Brug simpleDateFormat den er lavet til netop det du ønsker.
Avatar billede peterfup Nybegynder
26. marts 2002 - 18:52 #7
disky-->

Kan du give et eksempel på hvordan man laver sådan en streng?
Avatar billede soelvpil Nybegynder
26. marts 2002 - 20:31 #8
Date nu = new GregorianCalendar().getTime();
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy-HH-mm-ss");
String minStreng = formatter.format(nu);

Date og GregorianCalendar ligger i java.util, SimpleDateFormat ligger i java.text
Avatar billede peterfup Nybegynder
26. marts 2002 - 20:49 #9
Tak for hjælpen...

Det sidste eksempel fra soelvpil, var præcist det jeg søgte, derfor får han lidt flere point,
men ozze lidt til disky, da han nævnte simpleDataFormat!
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
Kategori
Kurser inden for grundlæggende programmering

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