I am running below snippet and I am getting inconsistent resluts
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-M-dd HH:mm:ss.SSS");
Date date;
date = inputFormat.parse("2020-6-30 11:45:45. 123");
SimpleDateFormat outputFormat = new SimpleDateFormat("MM-dd-yy hh:mm:ss. SSS");
System.out.println(outputFormat.format(date));//06-30-20 11:45:45. 123 is the output
Snippet 2:
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-M-dd HH:mm:ss.SSSSSS");
Date date;
date = inputFormat.parse("2020-6-30 11:45:45. 123456");
SimpleDateFormat outputFormat = new SimpleDateFormat("MM-dd-yy hh:mm:ss. SSSSSS");
System.out.println(outputFormat.format(date));//06-30-20 11:47:48. 000456 is output
snippet 3:
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-M-dd HH:mm:ss.SSSSSSSSS");
Date date;
date = inputFormat.parse("2020-6-30 11:45:45. 123456789");
SimpleDateFormat outputFormat = new SimpleDateFormat("MM-dd-yy hh:mm:ss. SSSSSSSSS");
System.out.println(outputFormat.format(date));//07-01-20 10:03:21. 000000789 is output
I believe the fraction seconds should be same before and after conversion. How can I achieve consistent results