Avatar billede skov_p Praktikant
26. november 2002 - 10:46 Der er 12 kommentarer og
1 løsning

String to date

static SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss.SSS");
Sådan ser mit dato format ud.
newCustomerList[i].editDate = ServiceDB.formatter.format(getTimestamp("editDate").toString());
Jeg henter et timeStamp ud af en database men hvordan får jeg det som en Date
Avatar billede skov_p Praktikant
26. november 2002 - 10:48 #1
Sorry date var sådan her det skulle se ud
newCustomerList[i].editDate = ServiceDB.formatter.format(resData.getTimestamp("editDate"));
Avatar billede skov_p Praktikant
26. november 2002 - 10:49 #2
ServiceDB.formatter.format(resData.getTimestamp("editDate")); returnerer en String men jeg skal bruge en date
Avatar billede disky Nybegynder
26. november 2002 - 10:54 #3
Du skal bruge

SimpleDateFormatter

Til opgaven
Avatar billede skov_p Praktikant
26. november 2002 - 10:55 #4
Hvis du kigger øverst i spørgsmålet ser du at jeg bruger sådan en.
static SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss.SSS");
Avatar billede flse Nybegynder
26. november 2002 - 11:18 #5
Brug java.text.DateFormat til opgaven.

String textDate = ....
DateFormat df = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss.SSS"); // det dato format som din string benytter
java.util.Date myDate = df.parse( textDate );
Avatar billede disky Nybegynder
26. november 2002 - 11:22 #6
Nå ja :)

Man kan være lidt træt her om morgenen :)

Men et godt tip, kig i API'en der står det hele
Avatar billede skov_p Praktikant
26. november 2002 - 12:36 #7
flse>
Jeg får 'Mon Nov 25 14:37:36 GMT+01:00 2002' returneret men jeg ville gerne have
'2002 11 25 14:37:36.000'
Avatar billede flse Nybegynder
26. november 2002 - 12:50 #8
prøv med:

newCustomerList[i].editDate = ServiceDB.formatter.format(getTimestamp("editDate"))

Du skal ikke have .toString() efter getTimestamp(), inde i format kaldet, så laver du det jo til en String INDEN du formatterer det :-)
Avatar billede skov_p Praktikant
26. november 2002 - 12:58 #9
Det var en fejl. Hvis du ser min kommentar efter spørgsmålet kan du se at jeg har fjernet det. Hvis jeg laver toString() efter jeg har formateret datoen skulle jeg så ikke få strengen "2002 11 25 14:37:36.000"
Avatar billede flse Nybegynder
26. november 2002 - 13:10 #10
ok, sorry.

Nej, hvis du laver toString() efter en date/timestamp, så får du et standardformat. Du skal benytte DateFormat (eller SimpleDateFormat) hver gang du skal have vist en date/timestamp i dit valgte format.


newCustomerList[i].editDate = new java.util.Date(getTimestamp("editDate").getTime());
System.out.println(ServiceDB.formatter.format(newCustomerList[i].editDate));
Avatar billede skov_p Praktikant
26. november 2002 - 13:23 #11
Ok så jeg har konverteret det til det rigtige format men når jeg vil se det som en streng får jeg standardformat.
Avatar billede skov_p Praktikant
26. november 2002 - 13:24 #12
Hvis du lægger st svar så...
Avatar billede flse Nybegynder
26. november 2002 - 13:29 #13
Er din editDate en java.util.Date, eller?

Det burde virke ... men der kan være noget jeg har overset
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