title: SimpleDateFormat cannot parse milliseconds with more than 4 digits
body: <p>I want to parse a timestamp, like this - <code>"2016-03-16 01:14:21.6739"</code>. But when I use the <code>SimpleDateFormat</code> to parse it, I find that it outputs an incorrect parsed value. It will covert 6739 milliseconds to 6 seconds with 739 millseconds left. It converted the date to this format - <code>Wed Mar 16 01:14:27 PDT 2016</code>. Why the seconds part has changed from 21 seconds to 27 seconds(an addition of 6 seconds?). The following is my code snippet:</p>
  
  <pre><code>final SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSS");
  String parsedate="2016-03-16 01:14:21.6739";
  try {
      Date outputdate = sf.parse(parsedate);
      String newdate = outputdate.toString();  //==output date is: Wed Mar 16 01:14:27 PDT 2016 
      System.out.println(newdate);
  } catch (ParseException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
  }
  </code></pre>