我想创建一个“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();
}
如何将日期转换为所需格式
简短的回答是:你不能。不能创建格式化的date
对象。
date-time对象应该存储关于日期、时间、时区等的信息,而不是关于格式的信息。您可以使用日期时间格式化API将日期时间对象格式化为字符串
。
java.time.format.DateTimeFormatter
。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解析库,我建议您这样做。它缺少错误检查等。 样例代码: 输出: