我想找到两个日期/时间之间的日,小时,分钟和秒。我以为我可以使用句号,我尝试了下面的代码,但我得到了一个非荒谬的答案。
DateTime dt1 = new DateTime("2004-12-13T21:39:45.618-06:00");
DateTime dt2 = new DateTime("2004-12-13T21:39:45.618-08:00");
Period p = new Period(dt1, dt2);
System.out.println("Test: " + p);
从此我得到输出:
I/System.out: Test: PT2H
不确定这是什么意思。
感谢您的帮助
答案 0 :(得分:5)
toString()
中的
来自API:
以ISO8601持续时间的样式获取值作为String 格式。从技术上讲,输出可能违反ISO规范 周可能包括在内。例如," PT6H3M5S"代表6个小时,3 分钟,5秒。
当您要求单独获取天,小时,分钟和秒时,您可以使用方便的来自API的get
方法:
import org.joda.time.DateTime;
import org.joda.time.Period;
...
DateTime dt1 = new DateTime("2004-12-13T21:39:45.618-06:00");
DateTime dt2 = new DateTime("2004-12-13T21:39:45.618-08:00");
Period p = new Period(dt1, dt2);
System.out.println("DAYS: " + p.getDays())
System.out.println("HOURS: " + p.getHours());
System.out.println("MINUTES: " + p.getMinutes());
System.out.println("SECONDS: " + p.getSeconds());
或者其他答案建议使用PeriodFormatter
。
答案 1 :(得分:2)
期间以ISO格式打印
标准ISO格式 - P yYmMwWd D T hH mMsS。
如果您需要在两天之间找到天,小时,分钟和秒,则应将期间转换为特定类型。 E.g:
self.addEventListener('push', function(event) {
console.log('Push message received', event);
var title = 'Push message';
event.waitUntil(
self.registration.showNotification(title, {
body: 'Please choose to like or reply
icon: 'images/icon.png',
tag: 'my-tag',
actions:[
{action:"like", title: "Like"},
{action:"reply", title: "⤻ Reply"}]
}));
});
或在类i = imread('sq.jpg');
i_bw = im2bw(i)==0;
% Modify the strel as required
se = strel('square', 10);
i_ed = imopen(i_bw, se);
limits = sum(i_ed, 2);
top_y = find(limits>0, 1);
bottom_y = find(limits>0, 1, 'last');
top_x = round(mean(find(i_ed(top_y, :)>0)));
bottom_x = round(mean(find(i_ed(bottom_y, :)>0)));
slope = -1 * (top_y - bottom_y)/(top_x - bottom_x);
rot_angle = 2 * pi * atan(slope);
i2 = imrotate(i, -rot_angle);
imshow(i2)
, Period p = new Period(dt1, dt2);
System.out.println("Days: " + p.toStandardDays().getDays());
System.out.println("Hours: " + p.toStandardHours().getHours());
System.out.println("Minutes: " + p.toStandardMinutes().getMinutes());
System.out.println("Seconds: " + p.toStandardSeconds().getSeconds());
,Days
和Hours
Minutes
答案 2 :(得分:1)
我认为你必须格式化期间的对象。请参阅此链接 Period to string
答案 3 :(得分:1)
您需要格式化mod_muc:
## host: "conference.@HOST@"
access: muc_access
access_create: muc_admin
default_room_options:
public: true
public_list: true
allow_change_subj: true
allow_query_users: true
allow_private_messages: true
allow_user_invites: true
members_by_default: true
title: "New chatroom"
anonymous: false
access_admin: muc_admin
。一种简单的方法是使用默认的方式:
Period
您还可以使用PeriodFormat.getDefault().print(period)
创建自己的格式。