我正在研究简单的应用程序,以便在不同的格式中显示时间。显示使用此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格式显示时间。我想将上述时间显示为美国格式。
如何以美国或任何其他格式显示时间?
答案 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
类,只需添加您的方法。