15. september 2004 - 01:48Der er
3 kommentarer og 1 løsning
mystisk dato-fejl
Betragt følgende kode: ------------------------------------------------------- Calendar cal = GregorianCalendar.getInstance(); int day = cal.get(cal.DAY_OF_MONTH); int month = cal.get(cal.MONTH); int year = cal.get(cal.YEAR); int hour = cal.get(cal.HOUR_OF_DAY); int minute = cal.get(cal.MINUTE); System.out.println(day + "/" + month + "/" + year); System.out.println(hour + ":" + minute); -------------------------------------------------------
Da jeg kørte denne kode for 8 minutter siden, viste den følgende resultat:
15/8/2004 1:39
Dermed var alt korrekt, undtagen måneden! Den synes ikke det er september, men august. Så spørger jeg mig selv: hvordan kan det lade sig gøre? (mit system-ur er indstillet korrekt).
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Det er helt korrekt. Hvis du læser i API-dokumentationen, står der, at get(Calendar.MONTH) giver datoen som en int, og at januar = 0, så du skal bare lige huske at lægge 1 til, så er det september ;o)
Det er ligesom med alt andet i Java, der er indekseret med 0 som start.
Arne>> Hm, jeg forsøgte at bruge din kode. Men selvom jeg importerer java.text.SimpleDateFormat får jeg fejlen "cannot resolve symbol method: SimpleDateFormat"...
DateFormat df = new SimpleDateFormat("dd/MM/yyyy hh:mm");
Synes godt om
Ny brugerNybegynder
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.