Visualizzazione dei risultati da 1 a 8 su 8

Discussione: [JAVA] DateFormat

  1. #1
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    221

    [JAVA]dateformat

    ciao a tutti.
    nel mio programma sto faccio un system.out..della data..e mi da il formato americano 2005/10/17 vorrei fare un metodo che prima di stampare vorrei diciamo formattare la data nel nostro formato 17/10/2005..stavo vedendo su una guida che esiste il dateformat...
    potete darmi una mano..?? come posso fare..

  2. #2
    Usa la classe SimpleDateFormat...è molto semplice...

    una cosa così può andare

    codice:
    SimpleDateFormat formatoAmericano = new SimpleDateFormat("MM/dd/yyyy")
    SimpleDateFormat formatoItaliano = new SimpleDateFormat("dd/MM/yyyy")
    
    System.out.println("Data Ita: "+formatoItaliano.format(formatoAmericano.parse(laTuaData)))
    al metodo format devi passare una Date e il metodo parse restituisce una Date prendendo come parametro una stringa formattata comedichiarato alla istanziazione dell'oggetto SimpleDateFormat
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  3. #3
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    221
    adesso provo grazie

  4. #4
    Per poter stampare la data in un formato predefinito java.text mette a disposizione 2 classi molto utili:
    [list=1][*]java.text.DateFormat[*]java.text.SimpleDateFormat[/list=1]

    La prima prevede un formato data in funzione delle impostazioni regionali della macchina. Una volta istanziato possiede già tutte le informazioni su come stampare la data catturandole dalla macchina che esegue il software.

    Esempio di uso
    codice:
    import java.util.Date
    import java.text.DataFormat
    
    Date oggi = new Date();
    DataFormat df = DataFormat.getDateInstance();
    
    System.out.println(df.format(oggi));
    La seconda classe prevende un sistema di definizione formato data a partire da un pattern passato in input al costruttore.
    I parametri di questo pattern sono ben specificati nelle API.

    Esempio di uso
    codice:
    import java.util.Date
    import java.text.SimpleDataFormat
    
    Date oggi = new Date();
    // Fomato giorno (dd) - mese (MM) - anno
    SimpleDataFormat sdf = new SimpleDataFormat("dd-MM-yyyy");
    
    System.out.println(sdf.format(oggi));
    Il metodo format permette la trasformazione dell'oggetto Date in String secondo le specifiche previste.

    Poichè il formato per entrambi le classi sono ben definite (DataFormat è fissato dalla classe, SimpleDataFormat è definito dal costruttore) è possibile passare in input a tali classi una String che rispetti il formato e trasformarla direttamente in un oggetto Date

    codice:
    import java.util.Date
    import java.text.SimpleDataFormat
    
    // Fomato giorno (dd) - mese (MM) - anno
    SimpleDataFormat sdf = new SimpleDataFormat("dd-MM-yyyy");
    
    String miaData = "31-03-1982"
    
    Date dataDiNascita = sdf.parse(miaData);
    
    System.out.println(dataDiNascita);
    System.out.println(sdf.format(dataDiNascita));
    Spero di essere stato chiaro

    Ciao

  5. #5
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    codice:
    String formatoData = "dd/MM/yyyy";
    SimpleDateFormat formatter = new SimpleDateFormat(formatoData);
    String dataItaliana = formatter.format(dataAmericana);

    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  6. #6
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    221
    grazie a tutti adesso provo...
    siete grandissimi..

  7. #7
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    221
    ciao funziona benissimo...
    scusate l'invadenza...
    è possibile che mentre mi mette 17/10/2005
    al posto del mese appunto il 10 mi metta il nome del mese.."ottobre"
    grazie....

  8. #8
    Prova questo pattern con il SimpleDateFormat:
    codice:
    "dd MMM yyyy"

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 © 2024 vBulletin Solutions, Inc. All rights reserved.