title: yyyy-MM-dd'T'HH:mm:ss.SSSSSSS'Z' format
body: <p>I am trying to convert GMT to IST. </p>
  
  <pre><code>  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSSS");
    Date c= sdf.parse("2017-03-31T10:38:14.4723017Z");
  
    Date date = new Date();
    DateFormat istFormat = new SimpleDateFormat();
    DateFormat gmtFormat = new SimpleDateFormat();
    TimeZone gmtTime = TimeZone.getTimeZone("GMT");
    TimeZone istTime = TimeZone.getTimeZone("IST");
  
    istFormat.setTimeZone(gmtTime);
    gmtFormat.setTimeZone(istTime);
    System.out.println("GMT Time: " + istFormat.format(c));
    System.out.println("IST Time: " + gmtFormat.format(c));
  </code></pre>
  
  <p>My output is  </p>
  
  <pre><code>GMT Time: 31/3/17 6:26 AM
  IST Time: 31/3/17 11:56 AM
  </code></pre>
  
  <p>But my actual output should be </p>
  
  <pre><code>GMT Time: 31/3/17 5:08 AM
  IST Time: 31/3/17 10:38 AM
  </code></pre>
  
  <p>What is wrong with my code?</p>