Saturday, 2 May 2020

Date Format conversion



Important code snippet for Date conversions and methods-

Here we are covering different conversion of date more frequently used-

Covert Date String to Date object

package com.featuretest.basics;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

class TestMain {
public static void main(String[] args) throws ParseException {
      String dateString = "31/05/1988";
      Date dateObj = new SimpleDateFormat("dd/MM/yyyy").parse(dateString);
      System.out.println(dateString + "\t" + dateObj);
}
}


Covert Date object to localDateTime

package com.featuretest.basics;

import java.text.ParseException;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date;

class TestMain {
public static void main(String[] args) throws ParseException {
      Date date = new Date();
      LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
      System.out.println(localDateTime);
}
}

Date conversion from one format to another

package com.featuretest.basics;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;

class TestMain {
public static void main(String[] args) {

String dateString = "2019-12-19 04:10:00";
String convertedDate = dateFormatConversion(dateString, "yyyy-MM-dd hh:mm:ss", "yyyy-MM-dd");
System.out.println(convertedDate);
           
// Using Java 8 DateTime API
String convertedDateJava8 = dateFormatConversionJava8(dateString, "yyyy-MM-dd hh:mm:ss", "yyyy-MM-dd");
System.out.println(convertedDateJava8);
}
     
private static String dateFormatConversion(String dateString, String inputDF, String outputDF) {
SimpleDateFormat sdf = new SimpleDateFormat(inputDF);
Date date = null;
try {
      date = sdf.parse(dateString);
} catch (ParseException e) {
      e.printStackTrace();
}
SimpleDateFormat newFormat = new SimpleDateFormat(outputDF);
String output = newFormat.format(date);
return output;
}
     
private static String dateFormatConversionJava8(String dateString, String inputDF, String outputDF) {
DateTimeFormatter oldDTF = DateTimeFormatter.ofPattern(inputDF);
DateTimeFormatter newDTF = DateTimeFormatter.ofPattern(outputDF);
LocalDateTime datetime = LocalDateTime.from(LocalDate.parse(dateString, oldDTF).atStartOfDay());
return datetime.format(newDTF);
}
}


No comments:

Post a Comment