import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.TimeZone;
import java.text.DateFormat;
public class MyClass {
public static void main(String args[]) {
Date scadenza = new Date();
String date = MyClass.dateToString(scadenza, "YYYYMMDD");
System.out.println(date);
}
public static String dateToString(Date date, String format){
if(date == null) return null;
final DateFormat df = new SimpleDateFormat(format);
df.setTimeZone(TimeZone.getTimeZone("UTC"));
return df.format(date);
}
}
我的一个软件中有这段代码,我简化了它,并在一个示例java类中重写了它。今天是“2022-04-08”,当我执行此代码时,变量date
等于“20220498”
,但它应该是“20220408”
。如何解决这个问题?
您将在UTC
时区获取当前日期,该时区可能与本地日期不同。
顺便说一下,Java中的日期也包含时间。你可能正在寻找的是:
System.out.println(DateTimeFormatter.ofPattern("yyyyMMdd").format(LocalDate.now()));
尝试使用“yyyyMMdd”作为格式参数。根据文件,D是一年中的一天。Y是一年中的一周。https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
Ps.Ho visto che sei italiano,buon continuo su Stackoverflow!
问题内容: 该java.util.Date 方法显示当地时区的日期。 在几种常见的情况下,我们希望以UTC格式打印数据,包括日志,数据导出以及与外部程序的通信。 在UTC中创建String表示形式的最佳方法是什么? 如何用更好的格式替换无法排序的juDate 格式(感谢@JonSkeet!)? 附录 我认为以自定义格式和时区打印日期的标准方法非常繁琐: 我一直在寻找像这样的单线: 问题答案: 遵循
问题内容: 我需要有关此java方法的一些建议。此方法的目的是采用表示日期的字符串-该字符串是从EST时区中的日期创建的-并将其转换为UTC时区中的java Date对象。 我看到的问题是dt的值似乎已关闭。例如,如果dateString为‘10 / 16/2012 12:06 PM’-我期望dt(以UTC为单位)的值类似于“ 2012年10月16日,星期二,下午4:06”。取而代之的是,dt的值
我需要将一些字符串日期转换为另一种格式的字符串日期 我想按照“yyyy-MM-dd'T'HH:MM:ss.SSSXX”模式获得ISO-8601格式的结果日期字符串 你能帮我实现这个吗?
我有一个,日期格式为:。需要将此转换为类型。尝试以这种方式执行,但无法解析Text。时间可以是00:00:00。有什么建议吗?
我刚到爪哇。Postgres db包含日期的格式为。我需要转换为。 我已经试过了,但是显示的结果是错误的
问题内容: 我正在尝试将字符串解析为android应用程序中的日期字段,但似乎无法正确理解。这是我要转换为日期“ 2012/03/26/11:49:00 AM”的字符串。我正在使用的功能是: 但我不断得到结果。 问题答案: 您显示我猜测的数据的方式是错误的,因为对我来说: 印刷品: