title: Issue with java.util.Date.getTime()
body: <p>I've a doubt about the java <code>Date</code> and <code>SimpleDateFormat</code>.</p>
  
  <p>I have an application, which maintains its file creation time in <strong>GMT</strong> in the format <strong><code>yearMonthDayHourMinute</code></strong>. Currently I am in a different TimeZone (say <code>IST</code>). So I want to do all my processing in the <code>GMT</code> format.</p>
  
  <p>Following snippet shows, how I retrieved convert the date which is stored in my object in to TimeInMillis.</p>
  
  <pre><code>&gt;        1. SimpleDateFormat valueSDF = new SimpleDateFormat("yyyyMMddHHmm");
  &gt;        2. valueSDF.setTimeZone(TimeZone.getTimeZone("GMT"));
  &gt;        3. Date date = valueSDF.parse("201212060915");
  &gt;        4. System.out.println("date.getTime():  "+ date.getTime());   // returns 1354785300000
  &gt;        5. String fileCreationTime= Long.toString((date.getTime()/1000));
  &gt;        6. System.out.println("time :: "+ fileCreationTime);   // returns 1354785300
  </code></pre>
  
  <p>The retrieved value in time in millis (step #4) is having an <strong>extra three trailing zeros</strong>. What my application needs is the result divided by 1000.(step #5)</p>
  
  <p>I am curious to know, why date.getTime() appends more number of zeros to the results.
  Stack experts, please share your suggestions !</p>