Tre*_*ree 8 java datetime parsing jodatime
我的输入字符串是PM时间:
log(start);
// Sunday, January 09, 2011 6:30:00 PM
Run Code Online (Sandbox Code Playgroud)
我正在使用Joda Time的模式语法来解析DateTime:
DateTimeFormatter parser1 =
DateTimeFormat.forPattern("EEEE, MMMM dd, yyyy H:mm:ss aa");
DateTime startTime = parser1.parseDateTime(start);
Run Code Online (Sandbox Code Playgroud)
那么,为什么我的输出字符串是AM?
log(parser1.print(startTime));
// Sunday, January 09, 2011 6:30:00 AM
Run Code Online (Sandbox Code Playgroud)
rob*_*x44 26
您的解析字符串包含"H",它告诉您的解析器将该值解释为24小时制的一天(0..23).所以6被解释为当天的第6小时.在早上.打印的AM是因为解析的整体日期被认为是在早上.
如果要使用12小时时间,请将格式字符串更改为:
"EEEE, MMMM dd, yyyy h:mm:ss aa".
Run Code Online (Sandbox Code Playgroud)
'h'将被解释为每天12小时(1..12)