gpt4 book ai didi

java - 将日期时间字符串格式化为仅时间

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:42:15 24 4
gpt4 key购买 nike

我正在从 SQLite 数据库中检索日期时间,格式为...

2011-01-24 02:45:00

在 C# 中,我可以简单地使用 DateTime.Parse("2011-01-24 02:45:00").ToString("HH:mm") 来获取字符串 02:45

他们是我可以在 Android/Java 中执行此操作的方法吗?我的 Android 应用程序中的代码如下所示...

// dateStr below is logging as correctly being yyyy-MM-dd HH:mm:ss format
String dateStr = cursor.getString(cursor.getColumnIndex("start_time"));
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String shortTimeStr = sdf.format(dateStr); // <-- throws IllegalArgumentException

编辑:感谢 doc_180 和 Konstantin Burov - 给出的示例帮助我解决了问题。部分问题是我导入了 java.sql.Date 而不是 java.util.Date。我已经改变了一切,它现在对我来说工作得很好。

最佳答案

您需要执行以下操作。

try {
Date date = null;
date = df.parse("2011-01-24 02:45:00");
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String shortTimeStr = sdf.format(date);
System.out.println(shortTimeStr);
} catch (ParseException e) {
// To change body of catch statement use File | Settings | File Templates.
e.printStackTrace();
}

正如我在评论中提到的,您应该将时间存储为毫秒而不是字符串。否则,除了创建中间人对象 Date 之外,我看不到任何其他方法。

关于java - 将日期时间字符串格式化为仅时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4778222/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com