tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Johannes7146
ERLEDIGT
JA
ANTWORTEN
6
ZUGRIFFE
654
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Tinipieps Tinipieps ist offline Mitglied Silber
    Registriert seit
    Feb 2010
    Beiträge
    74
    Hallo!
    Kennt sich jemand mit JCalendarCombo aus?

    Ich lasse die Auswahl in der JCalendarCombo in eine Excel-Datei schreiben! Leider erscheint das Datum dort in folgender Form:

    Mon Mar 08 13:06:59 CET 2010


    Diese Form der Ausgabe entsteht über
    Code :
    1
    2
    
    JCalendarCombo calendar = new JCalendarCombo(JCalendarCombo.DISPLAY_DATE, false);
    calendar.getDate().toString();

    Nun wollte ich aber eher eine Ausgabe mit dem Schema "d MMM yyyy" erzeugen.
    In der Dokumentation habe ich die Methode "setDateFormat()" gefunden!
    Leider bin ich noch relativ neu in der Welt von Java und weiß nicht genau, was ich in diese Methode schreiben müsste, um die Ausgabe im vorgegebenen Format zu erhalten.

    Bei folgendem Code, der unabhängig von der set-Methode benutzt werden sollte, streikt Eclipse:
    Code :
    1
    
    calendar.setDateFormat(new SimpleDateFormat("d MMM yyyy"));

    Wäre über schnelle Hilfe sehr dankbar
     

  2. #2
    Avatar von Johannes7146
    Johannes7146 Johannes7146 ist offline Goldschnabel
    Registriert seit
    Sep 2007
    Ort
    Gütersloh
    Beiträge
    736
    Du kannst das Date was dir calendar.getDate() zurückgibt mit dem SimpleDateFormat beliebig ausgeben.
    Einfach eine Instanz anlegen und die format(Date date) Methode benutzen.

    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    package test;
     
    import java.text.SimpleDateFormat;
    import java.util.Date;
     
    /**
     * 
     * @author Kleeschulte
     * @since 08.08.2010
     */
    public class SDFExample {
        public static void main(String[] args) {
            Date date = new Date();
            SimpleDateFormat sdf = new SimpleDateFormat("d MMM yyyy");
            System.out.println(sdf.format(date));
        }
    }

    http://java.sun.com/j2se/1.4.2/docs/...ateFormat.html
    Geändert von Johannes7146 (08.03.10 um 14:15 Uhr)
     
    Wenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
    Gruß Johannes
    ::: Homepage :::

  3. #3
    Tinipieps Tinipieps ist offline Mitglied Silber
    Registriert seit
    Feb 2010
    Beiträge
    74
    Hallo Johannes!

    Auf der einen Seite habe ich ausgehend von deinem Text zunächst gedacht, zu wissen, was du ungefähr meinst. Allerdings habe ich nicht so recht verstanden, wie mir dein Code-Beispiel helfen soll!

    Ich hab versucht direkt beim Aufruf der Methode getDate() auf das SimpleDateFormat zuzugreifen, auch habe ich versucht deinen Ansatz in die Methode getDate() einzufügen!
    Nichts hat zu einem respektablen ergebnis geführt! (Wahrscheinlich aufgrund meiner geringen Programmiererfahrung!)
    Ich hab jetzt gefunden, dass getDate().toLocaleString() (deprecated) zu folgender Ausgabe führt:

    09.03.2010 12:23

    Ist ja schonmal ein Anfang. Nur stört mich in dem Fall noch die Zeit!

    Also, wenn du mir eventuell nochmal genauer erklären könntest, wie ich das in der Methde getDate() einbinden kann, wäre ich dir echt dankbar
     

  4. #4
    Avatar von Johannes7146
    Johannes7146 Johannes7146 ist offline Goldschnabel
    Registriert seit
    Sep 2007
    Ort
    Gütersloh
    Beiträge
    736
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    
    package test;
     
    import java.text.SimpleDateFormat;
    import java.util.Date;
     
    /**
     * 
     * @author Kleeschulte
     * @since 08.08.2010
     */
    public class SDFExample {
        public static void main(String[] args) {
            JCalendarCombo calendar = new JCalendarCombo(JCalendarCombo.DISPLAY_DATE, false);
            Date date = calendar.getDate();
            SimpleDateFormat sdf = new SimpleDateFormat("d MMM yyyy");
            System.out.println(sdf.format(date));
        }
    }
     
    Wenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
    Gruß Johannes
    ::: Homepage :::

  5. #5
    Tinipieps Tinipieps ist offline Mitglied Silber
    Registriert seit
    Feb 2010
    Beiträge
    74
    Entschuldige, wenn du mir immernoch nicht helfen kannst!
    Ich bin halt wirklich noch sehr neu in der Welt von Java!

    Hier mal mein Code, in dem ich die Methode getDate() benutze (schreibe den erhaltenen Wert direkt in eine Excel-Tabelle und brauche keine sysout)

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    public void actionPerformed(ActionEvent e) {
                try{
                    if (  calendar2.isNullAllowed() &&
                            ! stromzaehlerEingabe.getText().isEmpty() &&
                                ! wasserzaehlerEingabe.getText().isEmpty() &&
                                    ! gaszaehlerEingabe.getText().isEmpty() ){
                                                                    
                        tab.tabelleFuellen(calendar2.getDate().toString(), 
                                stromzaehlerEingabe.getText(), gaszaehlerEingabe.getText(), 
                                    wasserzaehlerEingabe.getText() );
                        stromzaehlerEingabe.setText("");
                        wasserzaehlerEingabe.setText("");
                        gaszaehlerEingabe.setText("");
                    }
                    else {
                        JOptionPane.showMessageDialog(
                            JCalendar.this, 
                            "Bitte geben Sie das Datum UND die Zaehlerstaende der Ablesung an");
                    }
                    
                } catch (Exception ex) {
                    ex.printStackTrace();
                    JOptionPane.showMessageDialog(JCalendar.this, "FEHLER: "+ex);
                }
            }

    Ich brauche also irgendeine Möglichkeit in der actionPerformed-Methode, das neue DateFormat einzufügen!
     

  6. #6
    Avatar von Johannes7146
    Johannes7146 Johannes7146 ist offline Goldschnabel
    Registriert seit
    Sep 2007
    Ort
    Gütersloh
    Beiträge
    736
    Die Instanzierung der Klasse SimpleDateFormat solltest du evtl. noch globaler machen, falls sie an anderer Stelle auch verwendet wird.
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    
    formed(ActionEvent e) {
     SimpleDateFormat sdf = new SimpleDateFormat("d MMM yyyy");
                try{
                    if (  calendar2.isNullAllowed() &&
                            ! stromzaehlerEingabe.getText().isEmpty() &&
                                ! wasserzaehlerEingabe.getText().isEmpty() &&
                                    ! gaszaehlerEingabe.getText().isEmpty() ){
                                                                    
                        tab.tabelleFuellen(sdf.format(calendar2.getDate()), 
                                stromzaehlerEingabe.getText(), gaszaehlerEingabe.getText(), 
                                    wasserzaehlerEingabe.getText() );
                        stromzaehlerEingabe.setText("");
                        wasserzaehlerEingabe.setText("");
                        gaszaehlerEingabe.setText("");
                    }
                    else {
                        JOptionPane.showMessageDialog(
                            JCalendar.this, 
                            "Bitte geben Sie das Datum UND die Zaehlerstaende der Ablesung an");
                    }
                    
                } catch (Exception ex) {
                    ex.printStackTrace();
                    JOptionPane.showMessageDialog(JCalendar.this, "FEHLER: "+ex);
                }
            }
    Tinipieps bedankt sich. 
    Wenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
    Gruß Johannes
    ::: Homepage :::

  7. #7
    Tinipieps Tinipieps ist offline Mitglied Silber
    Registriert seit
    Feb 2010
    Beiträge
    74
    Es funktioniert

    Vielen Dank für dein Durchhalten
     

Ähnliche Themen

  1. jmf Video Format ändern
    Von Reebi im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 0
    Letzter Beitrag: 28.01.09, 12:36
  2. Format bei Uhrzeit ändern
    Von araser im Forum PHP
    Antworten: 2
    Letzter Beitrag: 02.10.07, 15:50
  3. Datum Format ändern
    Von Migelinho im Forum PHP
    Antworten: 7
    Letzter Beitrag: 05.09.06, 12:24
  4. Format Voreinstellung ändern
    Von unser im Forum Photoshop
    Antworten: 2
    Letzter Beitrag: 28.08.06, 00:03
  5. Format des Datums ändern
    Von Bigbutcher im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 07.03.04, 15:34