Kezdőoldal » Számítástechnika » Programozás » Hogyan lehet a dátumot megkapn...

Hogyan lehet a dátumot megkapni Java-ban? (Nem a konzolra akarom kiíratni)

Figyelt kérdés

Adott egy fgv, amiben ez a sor szerepel:

Date date = new Date();


Ezt a "date" változót átadja egy másik függvénynek.


A változót "áttenném" string-re, de hiába próbálkozok így:


String datum= String.format("%c", date );

Akkor:

Exception in thread "AWT-EventQueue-0" java.util.IllegalFormatConversionException: c != java.util.Date


String datum=( "%1$s %2$tB %2$td, %2$tY", date);

Így meg hibás


String datum=String.format( "%1$s %2$tB %2$td, %2$tY", date);

Akkor:

Exception in thread "AWT-EventQueue-0" java.util.MissingFormatArgumentException: Format specifier '2$tB'


String d=String.format( "%s %t %d, %Y", date);

Akkor:

Exception in thread "AWT-EventQueue-0" java.util.UnknownFormatConversionException: Conversion = 't'


Csak így jó:

String.format("Current Date/Time : %tc", date );


De mi van,ha nekem nem az "összes" kell, hanem csak a nap, vagy a hónap, vagy év-hónap-nap, vagy nap-óra?


2015. jan. 6. 14:18
 1/5 anonim ***** válasza:
100%

A java.util.Date használata nem ajánlott, már régóta nem támogatott. Helyette használd a java.util.Calendar osztályt.


Ha mégis ragaszkodsz a Date osztályhoz, ajánlom a toString() metódust ami egy String típussal tér vissza a következő formátumban: "dow mon dd hh:mm:ss zzz yyyy


[link]


Egyébként most is elmondom, mint amit mindig, használjuk a Java dokumentációt. Minden, szó szerint minden le van írva.


Itt pedig a Calendar osztály leírása:

[link]

2015. jan. 6. 14:39
Hasznos számodra ez a válasz?
 2/5 A kérdező kommentje:

Köszi. :)

Ment a zöld kéz. :)

2015. jan. 6. 14:43
 3/5 anonim ***** válasza:

Előző vagyok, ha neked nem az összes kell, akkor tényleg a java.util.Calendar osztály a neked való.



Ennél tudod alkalmazni a következőt:


import java.util.Calendar;

public class CalendarFaq{

public static void main(String[] args){

Calendar date = Calendar.getInstance();


System.out.println("Év: " + date.get(Calendar.YEAR));

System.out.println("Hó: " + (1 + date.get(Calendar.MONTH)));

System.out.println("Nap: " + date.get(Calendar.DAY_OF_MONTH));

System.out.println("Óra: " + date.get(Calendar.HOUR_OF_DAY));

System.out.println("Perc: " + date.get(Calendar.MINUTE));

System.out.println("Másodperc: " + date.get(Calendar.SECOND));


}

}

2015. jan. 6. 14:51
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:
100%

Használd a DateFormat osztályt.


DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");

String datum = df.format(date);


[link]

2015. jan. 6. 14:58
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:

Mindegyik válasz helyes, de a SimpleDateFormat a nyerő, akkor is, ha Calendar-t használsz Date helyett (a félreértések elkerülése végett jelezném, hogy nem mindig helyes megoldás).


Date esetén szimplán

String result = df.format(myDate);


Calendar esetén pedig

String result = df.format(calendar.getTime());

2015. jan. 6. 16:12
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!