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

java日历日期到yyyy-MM-dd格式

王亮
2023-03-14
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, 1);
Date date = cal.getTime();             
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
String date1 = format1.format(date);            
Date inActiveDate = null;
try {
    inActiveDate = format1.parse(date1);
} catch (ParseException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
}

这将产生inactivedate=Wed Sep 26 00:00:00 IST 2012。但我需要的是2012-09-26。我的目的是使用Hibernate标准将此日期与数据库中的另一个日期进行比较。所以我需要yyyy-mm-dd格式的date对象。

共有1个答案

唐俊爽
2023-03-14

Javadate是自1970年1月1日00:00:00 GMT以来的毫秒数的容器。

当您使用system.out.println(date)之类的东西时,Java使用date.toString()来打印内容。

更改它的唯一方法是重写date并提供您自己的date.toString()实现。现在,在您启动IDE并尝试此操作之前,我不会;这只会使事情复杂化。您最好将日期格式化为您想要使用(或显示)的格式。

LocalDateTime ldt = LocalDateTime.now().plusDays(1);
DateTimeFormatter formmat1 = DateTimeFormatter.ofPattern("yyyy-MM-dd", Locale.ENGLISH);
System.out.println(ldt);
// Output "2018-05-12T17:21:53.658"

String formatter = formmat1.format(ldt);
System.out.println(formatter);
// 2018-05-12

你应该利用三人后端口

以下保留为历史目的(作为原答案)

你能做的,就是设置日期的格式。

Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, 1);
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(cal.getTime());
// Output "Wed Sep 26 14:23:28 EST 2012"

String formatted = format1.format(cal.getTime());
System.out.println(formatted);
// Output "2012-09-26"

System.out.println(format1.parse(formatted));
// Output "Wed Sep 26 00:00:00 EST 2012"
 类似资料:
  • 我有一个格式为。我希望它的格式为 下面是我尝试进行此转换的示例util: 但是,我得到的输出不是格式。 请告诉我如何将从格式化为

  • 问题内容: 如何将日历日期转换为格式。 这将产生。但是我需要的是。我的目的是使用条件将此日期与数据库中的另一个日期进行比较。所以我需要格式的日期对象。 问题答案: Java是自1970年1月1日格林尼治标准时间00:00:00以来的毫秒数的容器。 当你使用时,Java将使用打印内容。 更改它的唯一方法是重写Date并提供你自己的实现。现在,在启动IDE并尝试执行此操作之前,我不会这样做。它只会使事

  • 我从格式为yyyy-mm-dd(加上不需要的hh-mm-ss)的API中获取日期结果。我想在jQuery中将其转换为dd-mm-yyyy格式,最简单/最快的方法是什么? 目前我正在使用:(对于返回的字符串yyyy-mm-dd): 但是好像有点啰嗦。

  • 问题内容: 我正在尝试从转换日期。我已经使用了mktime()函数和其他函数,但是我似乎无法使其工作。我已经成功地将原始日期用作定界符,但更改格式并将其与交换时没有成功。 任何帮助将不胜感激。 问题答案: 通过查看各个组成部分之间的分隔符,可以消除或格式中的日期的歧义:如果该分隔符是斜杠(),则假定为American ;否则,为0。反之,如果分隔符是破折号()或点(),则采用欧洲格式。 使用默认的

  • 问题内容: 我有一个日期列,其中日期格式为 在SQL Server中。有什么可能的方法来检索日期格式为 在选择语句中? 问题答案: 试试这个: 源链接 附录1: 如我的评论中所述,您需要先将字段转换为类型,然后才能执行上述操作。此示例应在您的SQL Server上运行: 如果出现此异常: 消息242,级别16,状态3,行1将varchar数据类型转换为datetime数据类型导致超出范围的值。 然

  • 问题内容: 如何检查SQL Server中日期字符串是否为MM / DD / YYYY格式? 问题答案: 如果结果为1,则为有效日期,但不能保证其为用户指定的日期。如果他们输入: 没有办法知道是6月7日还是7月6日。最好的办法是让用户从下拉列表或日历控件中选择日期,这使您可以控制格式并避免不必要的解释。您的应用程序层可以使用强类型变量/参数,然后插入正确类型的列中。