【问题标题】:Convert String to java.sql.Date and java.sql.Time将字符串转换为 java.sql.Date 和 java.sql.Time
【发布时间】:2010-06-05 13:47:55
【问题描述】:

如果我有这样的方法:

public static String convertDateTimeToString(DateTime dt) {
    return dt.getDate() + " " + dt.getTime();
}

它需要一个我自己的 DateTime 对象,其中包含一个 java.sql.Date 和一个 java.sql.Time,反转该过程的最佳方法是什么,以便我可以从一个 java.sql.Date 和一个 java.sql.Time字符串?

或者如果DateTime dt 是一个JodaTime DateTime 对象?

如果这可以在不参考java.util.Date 的情况下完成。

【问题讨论】:

    标签: java datetime jdbc


    【解决方案1】:

    查看SimpleDateFormat 类。这是tutorial

    你需要这样的东西:

    String datetimeString;
    Date result;
    SimpleDateFormat formatter = new SimpleDateFormat("EEE d MMM yy hh:mm:ss");
    result = formatter.parse (datetimeString);
    

    【讨论】:

    • 谢谢。我唯一遇到的问题是 Date 结果似乎是 Java.util.date 而我需要 Java.sql.date 和 Java.sql.time。
    • @Mr Morgan:但这根本不是问题。您可以轻松创建 sql.Date 实例:java.sql.Date sqlDate = new java.sql.Date(result.getTime());.
    • 好吧,它似乎工作如下: String datetimeString = "2010-05-23 23:32:45";日期结果; SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");结果 = formatter.parse (datetimeString); java.sql.Date sqlDate = new java.sql.Date(result.getTime()); java.sql.Time sqlTime = new java.sql.Time(result.getTime()); System.out.println("SQL 日期 " + sqlDate + " " + sqlTime);谢谢。
    【解决方案2】:

    可以使用java.sql.Time的valueOf方法将String转换为java.sql.Time,使用java.sql.Date的valueOf方法将String转换为java。 sql.日期

    【讨论】:

      猜你喜欢
      • 2014-05-27
      • 2021-04-29
      • 2015-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-28
      相关资源
      最近更新 更多