import java.text.SimpleDateFormat;
import java.util.Date;
public class TestTime2 {
public static void main(String[] args) {
Date date = new Date(); // 获取时间
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm a"); // 转换格式
String curTime = sdf.format(date);
System.out.println("curTime: " + curTime); // curTime: 07:21 下午
sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
curTime = sdf.format(date);
System.out.println("curTime: " + curTime);
// curTime: 2011-12-04 19:21:59.687
}
}
// //
SimpleDateFormat
/////////////////////
java.text.SimpleDateFormat
SimpleDateFormat
is a concrete class for formatting and parsing
dates in a locale-sensitive manner. It allows for formatting (date -> text),
parsing (text -> date), and normalization.
SimpleDateFormat
allows you to start by choosing any
user-defined patterns for date-time formatting. However, you are encouraged to
create a date-time formatter with either getTimeInstance
,
getDateInstance
, or getDateTimeInstance
in
DateFormat
. Each of these class methods can return a date/time
formatter initialized with a default format pattern. You may modify the format
pattern using the applyPattern
methods as desired. For more
information on using these methods, see DateFormat
.
Date and Time Patterns
Date and time formats are specified by date and time pattern
strings. Within date and time pattern strings, unquoted letters from
'A'
to 'Z'
and from 'a'
to
'z'
are interpreted as pattern letters representing the components
of a date or time string. Text can be quoted using single quotes
('
) to avoid interpretation. "''"
represents a single
quote. All other characters are not interpreted; they're simply copied into the
output string during formatting or matched against the input string during
parsing.
The following pattern letters are defined (all other characters from
'A'
to 'Z'
and from 'a'
to
'z'
are reserved):
Pattern letters are
usually repeated, as their number determines the exact presentation:
-
Text: For formatting, if the number of
pattern letters is 4 or more, the full form is used; otherwise a short or
abbreviated form is used if available. For parsing, both forms are accepted,
independent of the number of pattern letters.
-
Number: For formatting, the number of
pattern letters is the minimum number of digits, and shorter numbers are
zero-padded to this amount. For parsing, the number of pattern letters is
ignored unless it's needed to separate two adjacent fields.
-
Year: If the formatter's
Calendar
is the Gregorian calendar, the following rules are applied.
- For formatting, if the number of pattern letters is 2, the year is truncated
to 2 digits; otherwise it is interpreted as a number.
- For parsing, if the number of pattern letters is more than 2, the year is
interpreted literally, regardless of the number of digits. So using the pattern
"MM/dd/yyyy", "01/11/12" parses to Jan 11, 12 A.D.
- For parsing with the abbreviated year pattern ("y" or "yy"),
SimpleDateFormat
must interpret the abbreviated year relative to
some century. It does this by adjusting dates to be within 80 years before and
20 years after the time the SimpleDateFormat
instance is created.
For example, using a pattern of "MM/dd/yy" and a SimpleDateFormat
instance created on Jan 1, 1997, the string "01/11/12" would be interpreted as
Jan 11, 2012 while the string "05/04/64" would be interpreted as May 4, 1964.
During parsing, only strings consisting of exactly two digits, as defined by
Character.isDigit(char)
,
will be parsed into the default century. Any other numeric string, such as a one
digit string, a three or more digit string, or a two digit string that isn't all
digits (for example, "-1"), is interpreted literally. So "01/02/3" or
"01/02/003" are parsed, using the same pattern, as Jan 2, 3 AD. Likewise,
"01/02/-3" is parsed as Jan 2, 4 BC.
Otherwise, calendar system
specific forms are applied. For both formatting and parsing, if the number of
pattern letters is 4 or more, a calendar specific long
form is used. Otherwise, a calendar specific short
or abbreviated form is used.
-
Month: If the number of pattern letters
is 3 or more, the month is interpreted as text; otherwise,
it is interpreted as a number.
-
General time zone: Time zones are
interpreted as text if they have names. For time zones
representing a GMT offset value, the following syntax is used:
GMTOffsetTimeZone:
GMT
Sign Hours :
Minutes
Sign: one of
+ -
Hours:
Digit
Digit Digit
Minutes:
Digit Digit
Digit: one of
0 1 2 3 4 5 6 7 8 9
Hours must be between
0 and 23, and Minutes must be between 00 and 59. The format is locale
independent and digits must be taken from the Basic Latin block of the Unicode
standard.
For parsing, RFC 822 time zones are also
accepted.
-
RFC 822 time zone: For
formatting, the RFC 822 4-digit time zone format is used:
RFC822TimeZone:
Sign TwoDigitHours Minutes
TwoDigitHours:
Digit Digit
TwoDigitHours must be between 00 and
23. Other definitions are as for general time zones.
For parsing, general time zones are also accepted.
SimpleDateFormat
also supports
localized date and
time pattern strings. In these strings, the pattern letters described above
may be replaced with other, locale dependent, pattern letters.
SimpleDateFormat
does not deal with the localization of text other
than the pattern letters; that's up to the client of the class.
Examples
The following examples show how date and time patterns are
interpreted in the U.S. locale. The given date and time are 2001-07-04 12:08:56
local time in the U.S. Pacific Time time zone.
Date and Time Pattern
Result
"yyyy.MM.dd G 'at' HH:mm:ss z"
|
2001.07.04 AD at 12:08:56 PDT
|
"EEE, MMM d, ''yy"
|
Wed, Jul 4, '01
|
"h:mm a"
|
12:08 PM
|
"hh 'o''clock' a, zzzz"
|
12 o'clock PM, Pacific Daylight Time
|
"K:mm a, z"
|
0:08 PM, PDT
|
"yyyyy.MMMMM.dd GGG hh:mm aaa"
|
02001.July.04 AD 12:08 PM
|
"EEE, d MMM yyyy HH:mm:ss Z"
|
Wed, 4 Jul 2001 12:08:56 -0700
|
"yyMMddHHmmssZ"
|
010704120856-0700
|
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"
|
2001-07-04T12:08:56.235-0700 |
Date formats are not synchronized. It is recommended to create separate
format instances for each thread. If multiple threads access a format
concurrently, it must be synchronized externally.
Version:
1.88, 05/28/08
Author:
Mark Davis, Chen-Lieh Huang, Alan Liu
See Also:
Java
Tutorial
java.util.Calendar
java.util.TimeZone
DateFormat
DateFormatSymbols
分享到:
相关推荐
java时间大全.txt java时间大全.txt java时间大全.txt java时间大全.txt
Java时间格式转换大全
Java时间大小的比较 date java
java时间操作函数汇总
java 时间片算法 发生的泥泞i萨芬第几集
java 时间 datatime 工具类
JAVA时间格式化处理.
java时间转换大全,包括常用的日期和时间和时间戳之间的转换
java 时间格式转换符的使用 java 时间格式转换符的使用 java 时间格式转换符的使用
java 时间字符串中毫秒值时有时无,怎么解析(csdn)————程序
Java时间控件精确到秒 自己修改的别人的开源项目
java时间工具类按照年月周维度在时间区间内输出时间点
此为根据时间轮定时器的算法实现的 java时间轮的定时器,多轮和单轮实现
_java时间格式大全.doc
此为根据时间轮定时器的算法实现的 java时间轮的定时器,多轮和单轮实现
JAVA时间工具类(计算法定工作日工时):计算某个日期加上几个工作日后的一个工作日期(除周末和法定节假日),计算某个日期后一天的工作日期(除周末和法定节假日),计算两个日期的真实工作日(除周末和法定节假日),...
基于java的开发源码-xk-time Java时间工具包.zip 基于java的开发源码-xk-time Java时间工具包.zip 基于java的开发源码-xk-time Java时间工具包.zip 基于java的开发源码-xk-time Java时间工具包.zip 基于java的开发...
没事写了一个关于java时间处理的工具类,很简单
java时间管理系统(springboot+mysql+vue完整源码+说明文档+LW) 时间管理系统的功能分为管理员,用户两个部门,系统的主要功能包括首页,个人中心,系统公告管理,用户管理,时间分类管理,事件数据管理,目标数据...
java时间格式大全