Sto cercando di ottenere un fuso orario per un utente.C'è un modo per ottenere un fuso orario con (solo) un codice paese (codice ISO-3166 valido)?
Per questo ho un codice paese che è un codice paese ISO valido. Questi codici sono i codici maiuscoli e minuscoli come definiti da ISO-3166. Potete trovare un elenco completo di questi codici in un certo numero di siti, come ad esempio: http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
Credo che la risposta è "no, perché è un rapporto ManyToMany ... Ci possono essere molte fuso orario per un paese come Stati Uniti d'America. .. ". Questo è il problema ...
Ho tryied qualcosa come:
//CountryEnum contains ISO_3166 values (http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html)
//List all country to test timezone:
for (int i = 0; i < CountryEnum.values().length; i++) {
String isoCountryCode = CountryEnum.values()[i].name();// Get the iso country code
Locale locale = new Locale(isoCountryCode);// Build a country specific locale
Calendar calendar = Calendar.getInstance(locale);// Build a calendar with the specific locale
String timeZone = calendar.getTimeZone().getDisplayName();// Build a timeZone with the calendar
System.out.println("LOCALE : "+locale+"/COUNTRY: "+isoCountryCode+"/TIMEZONE: "+timeZone);
}
Ma tornare sempre TimeZone server ...
Tutte le idee?
interessante ci sono altri grandi paesi in un singolo fuso orario; Sia l'India che la Cina rientrano in questa categoria. L'India coprirà normalmente due fusi orari; La Cina coprirebbe 4 fusi orari. –
Yup - alcuni paesi hanno scelto di essere sani di mente quando si tratta di fusi orari :) –
Sanità - sì; di un tipo. Ma in Cina, se il sole sorge alle 5 del mattino sulla costa orientale, non sale fino alle 8 del mattino sul bordo occidentale del deserto del Gobi. E se tramonta alle 19:00 sulla costa orientale, non tramonta fino alle 10 di sera a ovest. –