2011-06-22 10 views
9

Pracuję nad prostą aplikacją, aby pokazać czas w różnych formatach. Aby wyświetlić czas wyświetlany jest kod kraju ISO przy użyciu tego kodu ISO. Czy mogę zmienić czas w tym formacie kraju ISO?Jak uzyskać format czasu przy użyciu kodu ISO kraju w systemie Android?

Napisałem kod w następujący sposób

TelephonyManager tMgr = 
    (TelephonyManager)getApplicationContext().getSystemService(
     Context.TELEPHONY_SERVICE); 

String iso = tMgr.getNetworkCountryIso(); 
Log.v("Device iso", "=======>" + iso); 
String mbNo = tMgr.getLine1Number(); 
Log.v("mbNo", "=======>" + mbNo); 

Tutaj jestem coraz iso jak USA. Czy mogę wyświetlić aktualny format czasu systemu w formacie czasu USA?

Użyłem Data klasę pokazać czas następująco

DateFormat df = DateFormat.getTimeInstance(); 
systime = df.format(new Date()); 

To wyświetla czas w formacie GG: ss AM/PM: MM. Chciałbym wyświetlić powyższy czas w formacie amerykańskim.

Jak wyświetlić godzinę w USA lub w innym formacie?

Odpowiedz

4

W twoim przypadku myślę, że można użyć

Date systemDate = Calendar.getInstance().getTime(); // the current system time 
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT, Locale.US); 
Date myDate = df.format(systemDate); 

Albo użyć niestandardowego formatu

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); 
Date myDate = sdf.format(systemDate); 

jeśli mają zastosowanie ciąg analizowania

Date myDate = sdf.parse("29/04/1980 12:30:24"); 
1

DateFormat ma statyczny method, który może zinicjalizować zlokalizowany format.

+0

to nie jest prawidłowa odpowiedź. ... przeczytaj moje pytanie poprawnie –

0

Uważam, że trzeba stworzyć własną metodę dla amerykańskiego formatu. Spróbuj stworzyć klasę i nadaj jej superklasę klasie DataFormat i po prostu dodaj swoją metodę.

Powiązane problemy