Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Simple Date Format

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    369

    Simple Date Format

    Salve.

    Io ho una data di questo tipo : apr 01 2009 00:55
    Ed un altra di questo tipo : Tue Mar 31 20:34:54 CEST 2009

    per entrambe voglio, usando il SimpleDateFormat ricavarne il Timestamp. Come faccio? Grazie 1000

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Simple Date Format

    Originariamente inviato da alfa_19
    Io ho una data di questo tipo : apr 01 2009 00:55
    Ed un altra di questo tipo : Tue Mar 31 20:34:54 CEST 2009

    per entrambe voglio, usando il SimpleDateFormat ricavarne il Timestamp.
    Puoi parsare le stringhe e ottenere subito un java.util.Date. Se poi vuoi un java.sql.Timestamp, devi istanziarlo passando i millisecondi ottenuti dal Date.

    Comunque per i pattern basta che vedi la documentazione di SimpleDateFormat. Se non hai ancora dimestichezza, i pattern sono rispettivamente:

    "MMM d y H:m"
    e
    "EEE MMM d H:m:s z y"
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    369
    Quindi per ottenere un date devo fare una cosa di questo tipo

    Codice PHP:
    String data "Tue Mar 31 20:34:54 CEST 2009";
    DateFormat format = new SimpleDateFormat("EEE MMM d H:m:s z y");
    Date miadata format.parse(data); 
    A questo punto come ottengo il timestamp?

    Grazie ancora

  4. #4
    Originariamente inviato da alfa_19
    Quindi per ottenere un date devo fare una cosa di questo tipo

    Codice PHP:
    String data "Tue Mar 31 20:34:54 CEST 2009";
    DateFormat format = new SimpleDateFormat("EEE MMM d H:m:s z y");
    Date miadata format.parse(data); 
    A questo punto come ottengo il timestamp?

    Grazie ancora
    codice:
     Timestamp times = miadata.getLongValue();

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da alfa_19
    A questo punto come ottengo il timestamp?
    codice:
    Timestamp ts = new Timestamp(miadata.getTime());
    P.S. Dei due esempi di date postate sopra, la seconda è sicuramente inglese (c'è "Tue" che è inglese) ma la prima non so .... apr potrebbe essere Aprile o April in inglese.
    Ma ad ogni modo ti conviene costruire il SimpleDateFormat usando il costruttore che ha il Locale e specificare il Locale.ENGLISH se vuoi l'inglese.
    Se il locale di default è l'italiano (e non specifichi nulla al SimpleDateFormat), la seconda data ad esempio non è accettata.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    369
    Originariamente inviato da andbin
    P.S. Dei due esempi di date postate sopra, la seconda è sicuramente inglese (c'è "Tue" che è inglese) ma la prima non so .... apr potrebbe essere Aprile o April in inglese.
    Ma ad ogni modo ti conviene costruire il SimpleDateFormat usando il costruttore che ha il Locale e specificare il Locale.ENGLISH se vuoi l'inglese.
    Se il locale di default è l'italiano (e non specifichi nulla al SimpleDateFormat), la seconda data ad esempio non è accettata.
    eh? :master:

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da alfa_19
    eh? :master:
    new SimpleDateFormat("EEE MMM d H:m:s z y", Locale.ENGLISH);
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    369
    Originariamente inviato da andbin
    codice:
    Timestamp ts = new Timestamp(miadata.getTime());
    ehm, usando questo codice, se poi stampo ts mi esce questo

    {SysUpTime = 143348 days 9:40:0} {Timestamp = Mon Jul 20 13:49:50 CEST 2009}

    come faccio quindi a far stampare il timestamp come un intero di 13 (se non erro) cifre?

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da alfa_19
    ehm, usando questo codice, se poi stampo ts mi esce questo

    {SysUpTime = 143348 days 9:40:0} {Timestamp = Mon Jul 20 13:49:50 CEST 2009}
    Cioè cosa hai fatto?? Un println(ts)??? Così, tecnicamente, stampi ciò che fornisce il toString() di Timestamp. Che comunque mi sembra strano che dia tutta 'sta roba ....

    Originariamente inviato da alfa_19
    come faccio quindi a far stampare il timestamp come un intero di 13 (se non erro) cifre?
    Chiarisci: vuoi i millisecondi a partire dal solito 1 gen. 1970??? Li hai già quando hai fatto miadata.getTime()
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.