【问题标题】:How to format the date retrieved from the database如何格式化从数据库中检索的日期
【发布时间】:2015-12-21 07:10:24
【问题描述】:

我从数据库中检索日期时间并将其保存到ArrayList<String> 类型变量中。现在我想格式化这个字符串。所以我需要先创建一个日期对象。但是当我制作日期对象时出现了一些问题。以下是我的代码。

Date date = new Date(bookingTime.get(i));

这里的bookingTimeArrayList。任何人都可以建议我出了什么问题..

【问题讨论】:

  • 您能否提供一个您从数据库接收到的示例日期值?

标签: android datetime date-formatting sqldatetime


【解决方案1】:

使用 SimpleDateFormat 类

更新

try {
      SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
       String myDate = "2015-12-09 15:36:00";
       Date date = format.parse(myDate);
} 
catch (ParseException e) { 
   e.printStackTrace(); 
}

这样就可以了。 :)

【讨论】:

  • 我的日期时间格式是 2015-12-09 15:36:00,我应用了你的建议它给出了空输出。你能解释一下
【解决方案2】:

首先检查您从数据库中获取的日期,然后您可以根据您的数据库日期结构格式化日期。

【讨论】:

  • 我的数据库日期是2015-12-09 15:36:00
  • @opu 我可以知道你想用哪种格式转换这个日期
  • String formattedDate = new SimpleDateFormat("yyyy-MM-dd KK:mm:ss a").format(date);使用这种格式。如果你得到你的答案,然后链接我的答案。
【解决方案3】:
Date date = new Date(bookingTime.get(i));
String formattedDate = new SimpleDateFormat("MM/dd/yyyy").format(date);

其他可用的格式标准是,

"yyyy-MM-dd"
"yyyy-MM-dd HH:mm"
"yyyy-MM-dd HH:mmZ"
"yyyy-MM-dd HH:mm:ss.SSSZ"
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"

【讨论】:

    【解决方案4】:

    使用下面的代码行:-

      String dtStart = "11/08/2013 08:48:10";
      SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
      try {
        date = format.parse(dtStart); //// Here dtStart is yours bookingTime.get(i)
        System.out.println("Date ->" + date);
      } catch (Exception e) {
        e.printStackTrace();
      }
    

    【讨论】:

    • 我的 bookingTime.get(i) 是字符串,但日期数据类型很长,所以会出错。我的日期时间格式是 2015-12-09 15:36:00
    • @opuopu ...您解决了您的问题吗?还是需要帮助??
    • 我做不到。我认为您的答案概念是正确的,但是 Date date = new Date(bookingTime.get(i));行出错
    • 日期 date = new Date("21-12-2015"); String sdf = new SimpleDateFormat("yyyy-MM-dd a").format(date);您是否在 bookingTime.get(i) 字符串中获得类似“21-12-2015”的值??
    • 我在 2015-11-23 18:39:00 从 bookingTime.get(i) 得到这个值,当我写 Date date = new Date(bookingTime.get(i));它显示错误
    【解决方案5】:

    这就是答案...

    String date = "2014-11-25 14:30";
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd HH:MM");
            Date testDate = null;
            try {
                testDate = sdf.parse(date);
            }catch(Exception ex){
                ex.printStackTrace();
            }
            SimpleDateFormat formatter = new SimpleDateFormat("MMM dd,yyyy hh:mm a");
            String newFormat = formatter.format(testDate);
            System.out.println(".....Date..."+newFormat);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-04
      • 2015-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-11
      • 2013-06-25
      • 1970-01-01
      相关资源
      最近更新 更多