title: string numbers to date and time format
body: <p>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)</p>
  
  <pre><code>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
  </code></pre>
  
  <p>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:</p>
  
  <pre><code>//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));
  </code></pre>
  
  <p>but it will get wrong date when I change the input value. For example <code>40993.2891410</code> should become <code>25/03/2012 06:56:21.782</code> but I know above command is not calibrated for all number.</p>