I have sort of double format number as string uploaded file that each of them equal to specific time like below: (in fact I must convert the left hand side to the right hand side)
40981.0500559 = 13.03.2012 01:12:04.000
40981.0500676 = 13.03.2012 01:12:05.000
40981.0500792 = 13.03.2012 01:12:06.000
40981.0500910 = 13.03.2012 01:12:07.000
40981.0501025 = 13.03.2012 01:12:08.000
I try with excel and find out the first five digit shows the date and count-up from 1900 which means 00000. and for every day it is become +1 increased. for the rest 7 digit after . it shows the time from 00:00:00 when it is .0000000 and for every 0.0000116 it is increase on second in the time till reach to 0.9999999 that is equal 00:00:00 again. but I'm really confused about the way out to convert in java. I tried this:
//Time[j] = 40981.0500559 as string format**
double T = Double.parseDouble(Time[j])*100000000- 2766489481590L;
DateFormat formatter = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss.FFF");
System.out.println(formatter.format(T));
but it will get wrong date when I change the input value. For example 40993.2891410
should become 25/03/2012 06:56:21.782
but I know above command is not calibrated for all number.