如何在android中使用国家ISO代码获取时间格式?

时间:2011-06-22 10:36:38

标签: android time-format

我正在研究简单的应用程序,以便在不同的格式中显示时间。显示使用此ISO代码显示ISO国家/地区代码的时间。我能否以ISO国家/地区格式更改时间?

我编写的代码如下

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);

我在这里获得iso作为美国。我可以用美国时间格式显示当前的系统时间格式吗?

我使用Date类来显示时间如下

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

以HH:MM:SS AM / PM格式显示时间。我想将上述时间显示为美国格式。

如何以美国或任何其他格式显示时间?

3 个答案:

答案 0 :(得分:4)

在你的情况下,我认为你可以使用

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

或使用自定义格式

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

如果你有一个字符串使用解析

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

答案 1 :(得分:1)

日期格式具有静态method,可以初始化本地化格式。

答案 2 :(得分:0)

我相信您需要为美国格式创建自己的方法。尝试创建一个类并使其超类成为DataFormat类,只需添加您的方法。