java localdatetime解析_如何使用LocalDateTime解析/格式化日期? (Java 8)

如果 String 在ISO-8601 format中,您还可以在 String 上使用 LocalDate.parse() 或 LocalDateTime.parse() 而不为其提供模式 .

例如,

String strDate = "2015-08-04";

LocalDate aLD = LocalDate.parse(strDate);

System.out.println("Date: " + aLD);

String strDatewithTime = "2015-08-04T10:11:30";

LocalDateTime aLDT = LocalDateTime.parse(strDatewithTime);

System.out.println("Date with Time: " + aLDT);

Output ,

Date: 2015-08-04

Date with Time: 2015-08-04T10:11:30

并且仅当您必须处理其他日期模式时才使用 DateTimeFormatter ,例如, dd MMM uuuu 表示月中的某一天(两位数),该月份名称的三个字母(Jan,Feb,Mar,...),以及一个四位数的年份:

DateTimeFormatter dTF = DateTimeFormatter.ofPattern("dd MMM uuuu");

String anotherDate = "04 Aug 2015";

LocalDate lds = LocalDate.parse(anotherDate, dTF);

System.out.println(anotherDate + " parses to " + lds);

Output

04 Aug 2015 parses to 2015-08-04

还记得 DateTimeFormatter 对象是双向的;它既可以解析输入也可以格式化输出 .

String strDate = "2015-08-04";

LocalDate aLD = LocalDate.parse(strDate);

DateTimeFormatter dTF = DateTimeFormatter.ofPattern("dd MMM uuuu");

System.out.println(aLD + " formats as " + dTF.format(aLD));

Output

2015-08-04 formats as 04 Aug 2015

Symbol Meaning Presentation Examples

------ ------- ------------ -------

G era text AD; Anno Domini; A

u year year 2004; 04

y year-of-era year 2004; 04

D day-of-year number 189

M/L month-of-year number/text 7; 07; Jul; July; J

d day-of-month number 10

Q/q quarter-of-year number/text 3; 03; Q3; 3rd quarter

Y week-based-year year 1996; 96

w week-of-week-based-year number 27

W week-of-month number 4

E day-of-week text Tue; Tuesday; T

e/c localized day-of-week number/text 2; 02; Tue; Tuesday; T

F week-of-month number 3

a am-pm-of-day text PM

h clock-hour-of-am-pm (1-12) number 12

K hour-of-am-pm (0-11) number 0

k clock-hour-of-am-pm (1-24) number 0

H hour-of-day (0-23) number 0

m minute-of-hour number 30

s second-of-minute number 55

S fraction-of-second fraction 978

A milli-of-day number 1234

n nano-of-second number 987654321

N nano-of-day number 1234000000

V time-zone ID zone-id America/Los_Angeles; Z; -08:30

z time-zone name zone-name Pacific Standard Time; PST

O localized zone-offset offset-O GMT+8; GMT+08:00; UTC-08:00;

X zone-offset 'Z' for zero offset-X Z; -08; -0830; -08:30; -083015; -08:30:15;

x zone-offset offset-x +0000; -08; -0830; -08:30; -083015; -08:30:15;

Z zone-offset offset-Z +0000; -0800; -08:00;

p pad next pad modifier 1

' escape for text delimiter

'' single quote literal '

[ optional section start

] optional section end

# reserved for future use

{ reserved for future use

} reserved for future use

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值