sql >> Database >  >> RDS >> Mysql

Hoe datum en tijd te extraheren uit een String Timestamp in java

Gebruik java.text.SimpleDateFormat en java.util.TimeZone

In welke tijdzone bevindt de datumreeks zich? Vervang de onderstaande UTC tijdzone met die tijdzone

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
Date date = sdf.parse("2014-02-15 05:18:08");

SimpleDateFormat sdf2 = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss a");
sdf2.setTimeZone(TimeZone.getTimeZone("IST"));
String dateStr = sdf2.format(date); // Output: 15-02-2014 10:48:08 AM

Opmerking: In welk formaat staat het uur in (24 uur/12 uur) in uw invoerreeks? In het bovenstaande voorbeeld wordt ervan uitgegaan dat het in 24-uurs formaat is, omdat er geen AM/PM-info in de invoerreeks staat.

Als de invoerreeks ook in 12-uurs formaat is, moet uw invoerreeks AM/PM-info ook vermelden, zoals 2014-02-15 05:18:08 PM . Pas in dat geval de sdf . aan naar new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a")

========================Bewerkt: =====================

Om je volgende vraag in de opmerking "Hoe datum en tijd afzonderlijk te extraheren" te beantwoorden...

SimpleDateFormat sdfDate = new SimpleDateFormat("dd-MM-yyyy");
sdfDate.setTimeZone(java.util.TimeZone.getTimeZone("IST"));

SimpleDateFormat sdfTime = new SimpleDateFormat("hh:mm:ss a");
sdfTime.setTimeZone(java.util.TimeZone.getTimeZone("IST"));

String dateStr = sdfDate.format(date);
String timeStr = sdfTime.format(date);


  1. MYSQL - selecteer de eerste 4 records voor elke categorie in een tabel

  2. hoe geef je een null-waarde door aan een veld met een externe sleutel?

  3. Een IP converteren naar een Long in MySQL

  4. Hoe draaien? Hoe converteer je meerdere rijen naar één rij met meerdere kolommen?