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

更改日期Java[closed]的格式

季俭
2023-03-14

我有Date对象的格式

 /107/2013 12:00:00 AM
2013-07-01

我是怎么做到的?。

我试着用这个代码

public static  Date  formatearFecha( Date fecha ){

    String fechaString = new SimpleDateFormat("yyyy-MM-dd").format(fecha) ;
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    Date fechaFormateada = null;
    try {
        fechaFormateada = df.parse(fechaString);
    } catch (ParseException ex) {
        Logger.getLogger(TestThings.class.getName()).log(Level.SEVERE, null, ex);
    }
    return fechaFormateada;

}

当我试着做一个测试时,我会得到这样的结果:

 System.out.println( formatearFecha(myDate) );
 Mon Sep 30 00:00:00 COT 2013

我的问题是在sql将java.util.date更改为java.sql.date时出现的
我解决了这个问题,所以:

private  String formatearFecha( Date fecha ){
    return new SimpleDateFormat("yyyy-MM-dd").format(fecha);
}

private java.sql.Date stringToSQLDate( String fecString ){

    java.sql.Date fecFormatoDate = null;
    try {
          SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd", new Locale("es", "ES"));
         return  new java.sql.Date(sdf.parse(fecString).getTime());
    } catch (ParseException ex) { }
    return null;
}

和测试:

stringToSQLDate( formatearFecha( myDate ) );

共有1个答案

连德水
2023-03-14

首先:java.util.Date对象中从来没有存储格式。您可以将Date视为一个对象,该对象包含自UTC时区的epoch以来的毫秒长值。这个类有很少的方法,但没有时区偏移量,格式化模式等存储在其中。

其次,可以使用以下基本代码将计算机区域设置中的日期格式化为yyyy-MM-dd:

Date mydate = ...
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String mydateStr = df.format(mydate);

类似地,您可以将字符串“/107/2013 12:00:00 AM”解析为计算机区域设置中的日期对象,如下所示:

String mydateStr = "/107/2013 12:00:00 AM";
DateFormat df = new SimpleDateFormat("/dMM/yyyy HH:mm:ss aa");
Date mydate = df.parse(mydateStr);

以上两种方法可用于将格式化的日期字符串从一个更改为另一个。

有关格式化代码的更多信息,请参阅javadoc for SimpleDateFormat。

 类似资料:
  • 问题内容: 我试图改变对象的格式,我试图以这种方式做到这一点: 但这对对象没有任何影响,仍然是旧格式,无法真正理解为什么会这样。 问题答案: 请尝试将两个概念区分开:您的数据和向用户呈现的数据(或用于其他目的的格式设置,例如包含在JSON中)。的保持值7可以表示为(格式化成)7,07,007或7,同时仍保持刚好相同的值而没有任何格式化信息- 外的格式化谎言。同样,a 具有一个时间点,它可以表示为(

  • 但这对对象没有任何影响,它还是用旧格式的,不能真正理解它为什么会那样。

  • 问题内容: 我需要使用Java更改日期格式 问题答案: 如何使用从一种日期格式转换为另一种日期格式:

  • 我要在数据库中输入任务的开始日期和截止日期。但是保存数据库的格式是这样的:Tue Apr 15 13:46:38 BST 2014 I want in yyyy-MM-dd格式。 这是我用来编写数据库中数据的代码: ----------形式---------

  • 如何将此日期类型“Thu Feb 02 12:00:00 GMT-12:00 2012”更改为另一个日期类型“YYYY-MM-DD HH:MM:SS”?如果“Thu Feb 02 12:00:00 GMT-12:00 201 2”为字符串类型,如何转换“YYYY-MM-DD HH:MM:SS”的日期类型? java代码: 输出为字符串类型。我想获得日期类型输出,所以我添加了以下代码。