I am getting a value for my time field in this format "10:30:00.000Z". I want to convert it to 10:30 AM/PM format. I'm trying to make use of SimpleDateFormat and parse it but I'm getting java.text.ParseException. Can someone help me on this?
Value of treatmentObject.getTime() = "10:30:00.000Z"
'''
if (treatmentObject.getTIME1() != null) {
System.out.println("Treatment time is"+treatmentObject.getTIME1());
time1 = toISO8601UTC(fromISO8601UTC(treatmentObject.getTIME1()));
System.out.println("Time1 is" + time1);
}
public static String toISO8601UTC(Date date) {
System.out.println("date is::" + date);
TimeZone tz = TimeZone.getTimeZone("UTC");
DateFormat df = new SimpleDateFormat("HH:mm:ss.SSSZZZZZ");
df.setTimeZone(tz);
System.out.println("String date is::" + df.format(date));
return df.format(date);
}
public static Date fromISO8601UTC(String dateStr) {
System.out.println("dateStr is::" + dateStr);
TimeZone tz = TimeZone.getTimeZone("UTC");
DateFormat df = new SimpleDateFormat("hh:mm a");
df.setTimeZone(tz);
try {
System.out.println("parse dateStr is::" + df.parse(dateStr));
return df.parse(dateStr);
} catch (ParseException e) {
System.out.println("Inside catch exception");
e.printStackTrace();
}
return null;
}
'''