有人能告诉我SimpleDateFormat类中可用的日期格式吗。
我看过api,但没有找到满意的答案。非常感谢您的帮助。
使现代化
其他问题已经过时了。可怕的遗留类,如SimpleDataFormat
,多年前被现代java取代。时间课。
为了定义您自己的自定义格式模式,DateTimeForall
中的代码与SimpleDateFormat
中的代码相似,但不完全相同。一定要研究留档。并搜索Stack Overflow以获取许多示例。
DateTimeFormatter f =
DateTimeFormatter.ofPattern(
"dd MMM uuuu" ,
Locale.ITALY
)
;
ISO 8601标准定义了许多类型的日期时间值的格式。这些格式是为数据交换而设计的,很容易被机器解析,也很容易被跨文化的人类读取。
爪哇。时间类在生成/解析字符串时默认使用ISO 8601格式。只需调用toString
Instant.now().toString()
2018-11-05T18:19:33.017554Z
对于UTC值,末尾的Z
表示UTC,发音为“Zulu”。
不必指定格式化模式,您可以使用java。时间会自动为你定位。使用DateTimeFormatter。本地的…
方法。
使用特定区域(时区)的人使用的挂钟时间获取当前时刻。
ZoneId z = ZoneId.of( "Africa/Tunis" );
ZonedDateTime zdt = ZonedDateTime.now( z );
生成标准ISO 8601格式的文本,并明智地扩展到将时区名称附加在方括号中。
zdt。toString():2018-11-05T19:20:23.765293 01:00[非洲/突尼斯]
生成自动本地化文本。
Locale locale = Locale.CANADA_FRENCH;
DateTimeFormatter f = DateTimeFormatter.ofLocalizedDateTime( FormatStyle.FULL ).withLocale( locale );
String output = zdt.format( f );
输出: Lundi 5十一月2018在19:20:23关于欧洲中部
一般来说,自动本地化是一个更好的做法,而不是用硬编码的格式化模式来烦恼。
爪哇。时间框架内置于Java8及更高版本中。这些类取代了麻烦的旧遗留日期时间类,比如java。util。日期
,日历
,
要了解更多信息,请参阅Oracle教程。并搜索堆栈溢出以获得许多示例和解释。规格是JSR 310。
现在处于维护模式的Joda-Time项目建议迁移到java.time类。
您可以直接与数据库交换java.time对象。使用符合JDBC 4.2或更高版本的JDBC驱动程序。不需要字符串,不需要java.sql.*
类。冬眠5
在哪里获得java.time类?
让我抛出一些我从http://www3.ntu.edu.sg/home/ehchua/programming/java/DateTimeCalendar.html得到的示例代码,然后您可以使用不同的选项,直到您理解它。
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTest {
public static void main(String[] args) {
Date now = new Date();
//This is just Date's toString method and doesn't involve SimpleDateFormat
System.out.println("toString(): " + now); // dow mon dd hh:mm:ss zzz yyyy
//Shows "Mon Oct 08 08:17:06 EDT 2012"
SimpleDateFormat dateFormatter = new SimpleDateFormat("E, y-M-d 'at' h:m:s a z");
System.out.println("Format 1: " + dateFormatter.format(now));
// Shows "Mon, 2012-10-8 at 8:17:6 AM EDT"
dateFormatter = new SimpleDateFormat("E yyyy.MM.dd 'at' hh:mm:ss a zzz");
System.out.println("Format 2: " + dateFormatter.format(now));
// Shows "Mon 2012.10.08 at 08:17:06 AM EDT"
dateFormatter = new SimpleDateFormat("EEEE, MMMM d, yyyy");
System.out.println("Format 3: " + dateFormatter.format(now));
// Shows "Monday, October 8, 2012"
// SimpleDateFormat can be used to control the date/time display format:
// E (day of week): 3E or fewer (in text xxx), >3E (in full text)
// M (month): M (in number), MM (in number with leading zero)
// 3M: (in text xxx), >3M: (in full text full)
// h (hour): h, hh (with leading zero)
// m (minute)
// s (second)
// a (AM/PM)
// H (hour in 0 to 23)
// z (time zone)
// (there may be more listed under the API - I didn't check)
}
}
祝你好运
日期和时间格式如下所述
SimpleDateFormat(Java平台SE 7)-日期和时间模式
你可以制作多种格式。ex-dd/MM/yyyy
或yyyy-'W'ww-u
或者您可以混合和匹配字母以达到所需的模式。图案字母如下。
G
-纪元指示符(AD)y
-年份(1996;96)Y
-周年(2009;09)M
-一年中的月份(7月;7月;7月)w
-一年中的一周(27)W
-月中的一周(2)D
-一年中的一天(189)d
-月日(10)F
-第二个月的星期几E
-一周中的日期名称(星期二;星期二)u
-一周的天数(1=周一,…,7=周日)a
-AM/PM标记H
一天中的小时数(0-23)k
-一天中的一小时(1-24)K
-上午/下午(0-11)的小时数h
-上午/下午(1-12)的小时数m
-以小时为单位的分钟数(30)s
-分每秒(55)S
-毫秒(978)z
-一般时区(太平洋标准时间;太平洋标准时间;GMT-08:00)Z
-RFC 822时区(-0800)X
-ISO 8601时区(-08;-0800;-08:00)要分析:
2000-01-23T04:56:07.000 0000
使用:new SimpleDateFormat(“yyyy-MM-dd'HH:MM:ss.SSSZ”)
有人能告诉我SimpleDateFormat类中可用的日期格式吗。 我看过api,但没有找到满意的答案。非常感谢您的帮助。
本文向大家介绍使用SimpleDateFormat格式化日期,包括了使用SimpleDateFormat格式化日期的使用技巧和注意事项,需要的朋友参考一下 SimpleDateFormat是一个具体的类,用于以对语言环境敏感的方式来格式化和解析日期。SimpleDateFormat允许您从选择任何用户定义的日期时间格式模式开始。 示例 这将产生以下结果- 输出结果 简单的DateFormat格式代
本文向大家介绍java日期格式化SimpleDateFormat的使用详解,包括了java日期格式化SimpleDateFormat的使用详解的使用技巧和注意事项,需要的朋友参考一下 日期和时间格式由 日期和时间模式字符串 指定。在 日期和时间模式字符串 中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起
我无法设置日期格式。接受作为参数。所以我创建了一个新的 它说below Date()方法不推荐使用,并且我在运行时得到below异常。 例外情况: 我的数据库的日期格式为-2012-02-16T00:00:00.000-0500我需要将它转换为格式为:dd-MMM-yyyy HH:MM:SS的字符串 我正在使用Java6
我见过很多不同的JSON日期格式标准: 哪一个是正确的?还是最好?这方面有什么标准吗?
问题内容: 当它们转换为字符串时,我需要将Java Date对象转换为与JavaScript日期具有相同格式的字符串。在我们的服务器上,我们有JavaScript日期‘d,格式为: 我有一个Java Date对象,我试图将其转换为相同格式的字符串。到目前为止,我的模式是 (小时,分钟和秒始终为0),但我无法确定时区()的正确模式 谢谢您的帮助!这是到目前为止我正在使用的Java代码,以防万一: 编