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

使用simpleDateFormat将字符串转换为Util日期无效

端木弘方
2023-03-14

我有一个包含日期的字符串,我需要将hh:mm:ss添加到日期中,但是当我使用dateFormat时,它会给出ParseException。代码如下:

DateFormat sdff = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String startDate = "2013-09-25";
Date frmDate;
frmDate = sdff.parse(startDate);

System.out.println("from date = " + frmDate);

我得到了abv代码的解析异常。但是,如果我从日期格式中删除hh:mm:ss,它工作得很好,输出将是from Date=Wed Sep 25 00:00:00 IST 2013。但我需要像from date=2013-09-25 00:00:00这样的输出

请帮帮我.提前道谢。

共有1个答案

宋鸿
2023-03-14

为此您需要2个SimpleDateFormat对象。一个用于解析当前日期字符串,另一个用于将解析的日期格式化为所需的格式。

// This is to parse your current date string
DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String startDate = "2013-09-25";
Date frmDate = sdf.parse(startDate); // Handle the ParseException here

// This is to format the your current date to the desired format
DateFormat sdff = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String frmDateStr = sdff.format(frmDate);

编辑:-

日期没有这样的格式。您只能使用SDF获得它的字符串表示。这里是文件的节选

一个围绕毫秒值的薄包装,允许JDBC将其标识为SQL日期值。milliseconds值表示自1970年1月1日00:00:00.000 GMT以来经过的毫秒数。

对于您在DB中插入的问题,Javadate可以保持在DB日期格式中。您不需要进行任何格式设置。只有在从DB取回日期时,才能使用to_char()方法对其进行格式化。

 类似资料:
  • 问题内容: 将日期转换为其他格式的字符串时遇到问题。日期: 我想将此格式转换为另一种格式:。 当我尝试将其转换时,使用以下方法会得到不同的结果: 我得到了错误的结果,该月已替换为分钟: 问题答案: 这是错误的。这应该是。有关将日期从一种格式转换为另一种格式的更多详细信息,请参见此http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDat

  • 我在将日期转换为不同格式的字符串时遇到了问题。日期: 我想将此格式转换为另一种格式:。 当我尝试转换它时,我会得到不同的结果: 我得到了一个错误的结果,月被替换成了分钟:

  • 问题内容: 我有以下代码片段: 运行此命令时,将其作为输出: 我期望: 我的意思是说我没有达到预期的月份。怎么了 问题答案: 尝试这个: is “month” (not ) is “day” (not ) 全部包含在SimpledocateFormat的javadoc中 仅供参考,你的格式仍然是有效的日期格式的原因是: is “minutes” is “day in year” 此外,你不需要投地

  • 我正在Android中转换字符串到日期对象......该字符串来自服务器,形式为“2014-02-22”或类似的...我想把它转换成我的日期,我可以在我的应用程序中使用…我是用简单的日期格式,解析的方法来转换....但此语句引发分析异常...意思是它不是转换我的字符串..也就是“2014-02-22”……它应该转换,但它不....所以好心帮我一下.....我得到空的响应

  • 问题内容: 我对以下行为感到非常困惑。我从一个方法返回2日期作为字符串: 我添加了一个屏幕截图,显示返回的日期分别为“ 2018-06-20 00:00:00”和“ 2018-06-24 00:00:00”,并保留了调试跟踪以显示 值。 我只是想将日期转换为20180620格式。 方法: …接受字符串值 我不明白“ 2017年12月6日星期三00:00:00 GMT”的日期是哪里 ?这是最终 作为

  • 问题内容: 是否可以将“ 20110210”转换为2011-02-10? 我试过,我得到 我究竟做错了什么? 我有新的SimpleDateFormat(“ yyyy-MM-dd”)而不是新的SimpleDateFormat(“ yyyyMMdd”) 问题答案: 这对我有用,不会引发异常: