Peut-être que ce qui suit sera un point de départ. Il convertit votre date GMT:
SimpleDateFormat dateFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
Calendar cal = Calendar.getInstance();
System.out.println(cal.getTime());
TimeZone currentTimeZone = cal.getTimeZone();
int offset = currentTimeZone.getOffset(cal.getTimeInMillis());
Date adjustedTime = new Date(cal.getTimeInMillis() - offset);
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
System.out.println(dateFormat.format(adjustedTime));
Quelques notes:
- Vous n'êtes probablement pas en mesure voir le changement PST à UTC parce que vous ne définissez pas le fuseau horaire sur le format de date
- Vous ne devriez plus utiliser les abréviations comme "GMT". Il est préférable d'utiliser le nom complet dans le champ id.
- Vous devrez être un peu plus créatif si vous exécutez le code ci-dessus sur un système dont l'heure par défaut est déjà définie sur GMT.
Je doute que vous avez essayé "des centaines de méthodes". Dans tous les cas, notez que PDT est PST * dans l'heure d'été * et affiche le «meilleur code» (avec les types utilisés) à ce jour, ainsi que les résultats réels et souhaités. –
Code ou il ne s'est pas produit. – pcalcao
GMT ou PST? Votre question n'est pas claire, et vous n'avez montré aucun code. En général, je vous suggère fortement d'utiliser Joda Time, mais au-delà de cela, il est difficile d'aider avec une question aussi vague. S'il vous plaît lire http://tinyurl.com/so-hints –