嗨,我的控制器请求映射中有一个日期对象。该对象是ZoneDateTime。问题在于将数据解析为ZoneDateTime,默认情况下会将其转换为UTC。我需要保留时区信息。有没有办法解决这个问题。
ex: 2018-06-10T12:00:00+0500
我的控制器中的值:
2018-06-10T07:00:00[UTC]
我计划在对控制器中的数据进行封送处理时使用对象映射器对其进行修复。但是我不确定我是否朝着正确的方向前进。
谢谢。
答案 0 :(得分:2)
您要解析的字符串没有时区信息。要使用的适当类型是public void populateFragments() {
Fragment fragment = new Fragment();
//fragment is added for the first time
addFragment(fragment);
// fragment is added for the second time
// This call will be responsible for the issue. The
addFragment(fragment);
}
public void addFragment(Fragment fragment) {
FrameLayout frameLayout = AppView.createFrameLayout(context);
view.addView(frameLayout);
getSupportFragmentManager().beginTransaction().add(frameLayout.getId(), fragment).commit();
}
:
OffsetDateTime
您可以通过调用OffsetDateTime dt = OffsetDateTime.parse("2018-06-10T12:00:00+0500",
DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssX"))
将其转换为ZonedDateTime
。