【发布时间】:2016-12-03 19:13:49
【问题描述】:
如何将来自 PostgreSQL 的格式字符串“2016-11-23 00:00:00.0”与 Java 中的日期对象“Tue Nov 23 00:00:00 UTC 2016”进行比较。
我搜索了不同的建议来解决这个问题,但仍然抛出Object cannot be converted to Stringcompilation 错误。
我试过了
String string = "2016-11-23 00:00:00";
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
Date date2 = format.parse(string);
我需要一个True 用于if (string = date)
其中日期在程序前面定义为Date date;
我是 Java 初学者。 由于我的知识有限,如果我问了一个重复的问题,非常抱歉
【问题讨论】:
-
您的格式错误。
ss.S搞砸了。将格式改为"yyyy-MM-dd HH:mm:ss"。 -
你能展示你所有的代码吗?您发布的代码编译得很好。
-
尝试将“yyyy-MM-dd HH:mm:ss.S”替换为“yyyy-MM-dd HH:mm:ss”。
-
我的代码如下
Date date; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S"); int i =0; for (int d = 0; d < days; d++) { date = DateUtility.addNDaysToDate(from, d); System.out.println( ob1[0][i] + "-------------" + sdf.format(date)); if (ob1[0][i] == sdf.format(date)) { System.out.println("Success"); arr2[d] = 0; i=i+1; } else { System.out.println("Failed"); } -
你是怎么得到这个字符串的?你打电话给
resultSet.getString()了吗?您可以直接调用resultSet.getTimestamp()并比较您的两个Date对象。
标签: java date comparison