下面是我以 yyyy-MM-dd 格式设置日期的方法,代码按预期工作,但出现 Sonar 错误 - 实例化 SimpleDateFormat 对象时,指定区域设置。有专家建议如何解决这个问题吗?
public String getEndDate() throws ParseException {
Calendar date = Calendar.getInstance();
date.setTime(new Date());
Format f = new SimpleDateFormat("yyyy-MM-dd");
date.add(Calendar.YEAR,1);
return f.format(date.getTime());
}
最佳答案
您可以指定区域设置,如下例所示。
public static String getEndDate() {
Calendar date = Calendar.getInstance();
date.setTime(new Date());
Format f = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH); // Locale
date.add(Calendar.YEAR,1);
return f.format(date.getTime());
}
值得注意的是,如果省略区域设置,它将使用基于主机 JVM 的Locale.getDefault()
。这可能是一个令人向往的功能。
关于java - Sonar - 实例化 SimpleDateFormat 对象时,指定区域设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53750974/