Rekordy są zapisywane zgodnie ze strefą czasową USA, ale jeśli chcę, aby użytkownik ponownie wyświetlił ten sam rekord, powinien przekształcić datę serwera na (USA) Strefa) do strefy czasowej użytkownika Strefa czasowa użytkownikaJak przekonwertować datę z jednej strefy czasowej na inną strefę czasową
Odpowiedz
Wpisując google "Jawna strefa czasowa zmiany daty" lub "Jawna strefa czasowa zmiany daty". Będziesz miał jeden ze swoich wyników:
W Javie (źródło: http://www.coderanch.com/t/417443/java/java/Convert-Date-one-timezone-another)
Date date = new Date();
DateFormat formatter = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z");
formatter.setTimeZone(TimeZone.getTimeZone("CET"));
// Prints the date in the CET timezone
System.out.println(formatter.format(date));
// Set the formatter to use a different timezone
formatter.setTimeZone(TimeZone.getTimeZone("IST"));
// Prints the date in the IST timezone
System.out.println(formatter.format(date));
Javascript (źródło: http://www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/6016329)
// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {
// create Date object for current location
d = new Date();
// convert to msec
// add local time zone offset
// get UTC time in msec
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
// create new Date object for different city
// using supplied offset
nd = new Date(utc + (3600000*offset));
// return time as a string
return "The local time in " + city + " is " + nd.toLocaleString();
}
// get Bombay time
alert(calcTime('Bombay', '+5.5'));
//Convert date from one zone to another
/*
$zone_from='Asia/Kolkata';
$zone_to='America/Phoenix';
date_default_timezone_set($zone_from);
$convert_date="2016-02-26 10:35:00";
echo $finalDate=zone_conversion_date($convert_date, $zone_from, $zone_to);
*/
function zone_conversion_date($time, $cur_zone, $req_zone)
{
date_default_timezone_set("GMT");
$gmt = date("Y-m-d H:i:s");
date_default_timezone_set($cur_zone);
$local = date("Y-m-d H:i:s");
date_default_timezone_set($req_zone);
$required = date("Y-m-d H:i:s");
/* return $required; */
$diff1 = (strtotime($gmt) - strtotime($local));
$diff2 = (strtotime($required) - strtotime($gmt));
$date = new DateTime($time);
$date->modify("+$diff1 seconds");
$date->modify("+$diff2 seconds");
return $timestamp = $date->format("Y-m-d H:i:s");
}
TimeZone fromTimezone =TimeZone.getTimeZone(from);
TimeZone toTimezone=TimeZone.getTimeZone(to);
long fromOffset = fromTimezone.getOffset(calendar.getTimeInMillis());
long toOffset = toTimezone.getOffset(calendar.getTimeInMillis());
long convertedTime = calendar.getTimeInMillis() - (fromOffset - toOffset);
java.time
Stare klasy daty i czasu są źle zaprojektowane, mylące i kłopotliwe. Unikaj ich.
Skorzystaj z nowoczesnych klas: framework java.time wbudowany w Javę 8 i nowsze. Znajdź z powrotem porty for earlier Java 6 & 7 i for Android.
An Instant
to moment na osi czasu w UTC.
Instant now = Instant.now();
Zastosuj strefę czasową (ZoneId
), aby uzyskać ZonedDateTime
.
Nigdy nie używaj skrótów strefowych o długości 3-4 liter, takich jak EST
lub IST
. Nie są ani standaryzowane, ani unikalne (!). Użyj formatu proper time zone names, zbudowanego w formacie continent/region
, takim jak Asia/Kolkata
, Pacific/Auckland
, America/Los_Angeles
.
ZoneId zoneId_Montreal = ZoneId.of("America/Montreal");
ZonedDateTime zdt_Montreal = ZonedDateTime.ofInstant(instant , zoneId_Montreal);
Zastosuj inną strefę czasową, aby wygenerować kolejną ZonedDateTime
dostosowaną do tej strefy czasowej. Zadzwoń pod withZoneSameInstant
.
ZoneId zoneId_Paris = ZoneId.of("Europe/Paris"); // Or "Asia/Kolkata", etc.
ZonedDateTime zdt_Paris = zdt_Montreal.withZoneSameInstant(zoneId_Paris);
Jeśli chcesz wrócić do UTC, poprosić o Instant
.
Instant instant = zdt_Paris.toInstant();
kod aby otrzymać Berlin Czas i przekształcić go w czas UTC
Calendar sc = Calendar.getInstance(TimeZone.getTimeZone("Europe/Berlin"));
String strt = null;
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'");
sf.setTimeZone(TimeZone.getTimeZone("Etc/UTC"));
sc.set(sc.get(Calendar.YEAR),sc.get(Calendar.MONTH), sc.get(Calendar.DATE),sc.get(Calendar.HOUR) , sc.get(Calendar.MINUTE));
strt = sf.format(sc.getTime());
System.out.println("Start :"+strt);
- 1. Konwersja daty na inną strefę czasową
- 2. Python: Jak przekonwertować unixtimestamp i strefę czasową na obiekt datetime?
- 3. Dostosuj strefę czasową
- 4. Jak przekonwertować datetime na konkretną strefę czasową wC#?
- 5. Konwersja daty i czasu na inną strefę czasową w java
- 6. Konwersja daty z strefy czasowej na strefę czasową w serwerze sql
- 7. Przetwarza datę ze strefy czasowej "Etc/GMT"
- 8. Jak przekonwertować strefę czasową wartości serii Pandas
- 9. W czasie Joda Jak przekonwertować strefę czasową bez zmiany czasu
- 10. Jak przeanalizować datę, w tym strefę czasową z czasem Jody
- 11. Jak przekonwertować czas na strefę czasową urządzenia iPhone?
- 12. Jak przekonwertować datetime ze strefy czasowej użytkowników na EST w javascript
- 13. HttpCookie.Expire implikacje strefy czasowej?
- 14. Dynamiczne przesunięcie strefy czasowej w agregacji elastycznej?
- 15. Konwertuj datę ze znaną strefą czasową na datę UTC
- 16. Konwersja strefy czasowej silverlight
- 17. Jak ustawić strefę czasową przed wywołaniem strftime?
- 18. Szyny: przekonwertuj UTC DateTime na inną strefę czasową
- 19. Jak przekonwertować datę tekstową na sygnaturę czasową?
- 20. Jak stworzyć strefę czasową Django-admin?
- 21. Get czasową z przeglądarki użytkowników korzystających chwili (czasową) .js
- 22. Jak uzyskać lokalną strefę czasową z systemu używając nodejs
- 23. C#/ASP.NET MVC3, konwersja z DateTime.UtcNow, na strefę czasową klienta. Jak uzyskać informacje o strefie czasowej?
- 24. Zmiana strefy czasowej w Tomcat
- 25. Sposób uzyskania strefy czasowej z kodu pocztowego?
- 26. Jak zmienić strefę czasową dla aplikacji asp.net
- 27. lokalnej strefy czasowej w Ruby
- 28. Ustawienie strefy czasowej w Pythonie
- 29. Bot telegramu. Uzyskaj strefę czasową użytkownika
- 30. Jak poprawnie ustawić strefę czasową mysql
Oi! Java i JavaScript to dwie zupełnie inne rzeczy! – LouwHopley