SimpleDateFormat和一个奇怪的警告

时间:2015-09-13 12:35:48

标签: java android

这是带有“奇怪”警告的代码的一部分:

public void onTick(long millisUntilFinished) {
    tv.setText("" + new SimpleDateFormat("mm:ss").format(new Date( millisUntilFinished)));
}

警告是:

  

要获取本地格式,请使用getDateInstance(),getDateTimeInstance()或getTimeInstance(),或使用新的SimpleDateFormat(String模板,Locale语言环境),例如Locale.US用于ASCII日期。

对我来说这很奇怪,因为我使用的是SimpleDateFormat,所以我不明白为什么避免警告的建议完全是为了做它曾做过的事情。而且,我在其他活动中使用相同的东西而没有任何警告 所以我完全比较了两个代码,并没有可以解释的差异(前面提到的两个活动只有一些不变的名称不同。)

此外,我想知道它是否可能意味着进一步的问题,因为我的程序顺便说一句。

1 个答案:

答案 0 :(得分:0)

要删除警告,只需在实例化日期格式对象时添加Locale.getDefault()作为第二个参数。例如

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
                java.util.Locale.getDefault());