当前位置: 首页 > 知识库问答 >
问题:

转换Java日期格式

井兴怀
2023-03-14

我想创建一个“yyyy-mm-dd hh:mm:ss”格式的日期对象。下面是我正在使用的代码。解析字符串后形成的日期对象不是所需的格式(预期为:2020-04-04 00:00:00,但实际为:Sat Apr 04 00:00:00 CDT 2020)。如何将日期转换为所需格式

  Date da = new Date();
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  String dt = "2020-04-04 00:00:00";
  try {
    da = sdf.parse(dt);
} catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

共有1个答案

皇甫心思
2023-03-14

如何将日期转换为所需格式

简短的回答是:你不能。不能创建格式化的date对象。

date-time对象应该存储关于日期、时间、时区等的信息,而不是关于格式的信息。您可以使用日期时间格式化API将日期时间对象格式化为字符串

  • 现代日期时间类型的日期时间格式API是java.time.format.DateTimeFormatter
  • 遗留日期时间类型的日期时间格式化API是java.text.SimpleDateFormat

java.util.date对象不像现代的日期时间类型那样是真正的日期时间对象;相反,它表示自称为“历元”的标准基准时间(即1970年1月1日,00:00:00 GMT(或UTC))以来的毫秒数。当您打印java.util.date的对象时,它的ToString方法返回JVM时区中的日期-时间,从这个毫秒值计算出来。如果需要在不同的时区中打印日期-时间,则需要将时区设置为simpledateformat并从中获取格式化字符串。

 类似资料:
  • 问题内容: 有java任何函数,如果我有一个带有日期格式为String的String,或者 我想将其转换为另一种格式,例如: 问题答案: 我建议为此使用两个SimpleDateFormat对象。 有关格式,请参见文档:http : //docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

  • 问题内容: 在这里约会我的问题: 我知道该字符串位于UTC时区。我需要将此字符串转换为“ yyy-mm-dd’T’HH:mm:ssZ”格式。 为此,我使用以下代码: 问题是此代码在时区UTC + 1的服务器上运行,其结果是: 它从初始时间删除2小时,并放置UTC时间戳(0000)。 你能帮我解决这个问题吗?谢谢。 问题答案: 如果输出格式为UTC + 1,则应在外包格式器中使用该格式,而不是UTC

  • 问题内容: 我有日期字符串如下: 我想转换为以下格式: 首先,我使用下面的代码来解析日期: 但是它在下面的行中显示异常: 我该如何修改? 问题答案: 试试这个 您的默认语言可能不是英语,并且不接受周五和八月

  • 问题内容: 我有一行C#代码,试图在Java中复制。代码如下。 目的是将xml上下文中已经存在的DateTime替换为代表通用时间的DateTime。 我尝试使用 但由于不推荐使用Date.parse()而无法继续。我通读了Eclipse中的注释,并按建议尝试使用DateFormat,但DateFormat没有解析方法。 有人可以建议不使用任何第三方库的问题解决方案吗? 问题答案: 您可以使用:

  • 问题内容: 我有日期的字符串形式: 我想将其格式化为 我在用 但它不起作用。 我如何转换为? 问题答案: 试试这个 现在

  • 问题内容: 我收到的日期值是这样的JSON对象: 我想用Java代码将其解析为或作为。 我想知道什么是简单的方法。 问题答案: 我认为第一个数字()是自纪元以来的毫秒数,并且是时区。鉴于以下示例代码似乎是这种情况,它似乎可以满足您的要求。 以下代码使用Jackson解析JSON输入,如果您还没有选择的JSON解析库,我建议您这样做。它缺少错误检查等。 样例代码: 输出: