title: Print date in original timezone
body: <p>Let's say that my device is in Australia (GMT+10:00).</p>
  
  <p>I have a date "2016-04-22T17:45:00+02:00" received from an API.</p>
  
  <p>I want to display it nicely in the original time zone (GMT+02:00).</p>
  
  <p>So, I used SimpleDateFormat with "yyyy-MM-dd'T'HH:mm:ssZZZZZ".</p>
  
  <pre><code>String date = "2016-04-22T17:45:00+02:00";
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZZZZZ");
  Calendar cal = Calendar.getInstance();
  cal.setTime(sdf.parse(date));
  </code></pre>
  
  <p>But unfortunately, I can't find a clean way to display the date:</p>
  
  <pre><code>sdf.format(cal.getTime());
  </code></pre>
  
  <p>uses the device time zone.</p>
  
  <p>So I parsed "manually" the date to extract the time zone to set it in the calendar.</p>
  
  <pre><code>cal.setTimeZone(TimeZone.getTimeZone("GMT" + date.substring(date.length() - 6, date.length())));
  </code></pre>
  
  <p>But it doesn't seems to do the trick.</p>
  
  <p>How can I do this?</p>