JodaTime:日期时间+00:00而不是Z.

时间:2015-01-13 10:43:17

标签: java jodatime

你好,我有一个joda时间的问题。我的应用程序使用远程服务,并且此服务在此字符串中存在问题:

2015-04-14T09:29:02.485Z

所以我用相同的方法测试了它(见Z):

2015-04-14T09:29:02.485+00:00

这是有效的。那么如何轻松删除Z并使用00:00,完全相同的是什么?我不想写自己的格式化程序,因为它必须是iso 8601.有一个简单的方法吗?

我有以下代码:

...
public void myMethod(Datetime time){
    remoteCall(time.toString);
}
...

2 个答案:

答案 0 :(得分:3)

如果您想用+00:00替换Z,您可以试试这个,我重复使用上面的代码:

    public void myMethod(Datetime time){
    /**
     * this will return in this format 2015-04-14T09:29:02.485+00:00
     * assumption is that time in UTC Timezone
     */
    remoteCall(time.toString("yyyy-MM-dd'T'HH:mm:ss.SSSZZ"));
}

希望这有帮助!干杯。 :)

答案 1 :(得分:0)

使用Joda-Time,我们可以实现这一目标。下面的小程序可以帮助您

import org.joda.time.DateTime;    
import org.joda.time.DateTimeZone;    
import org.joda.time.format.DateTimeFormat;    
import org.joda.time.format.DateTimeFormatter;

public class TestTimezone {

    public static void main(String[] args) {

        DateTime jodatime = new DateTime(DateTimeZone.UTC);
        DateTimeFormatter dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSSZZ");
        System.out.println(dtfOut.print(jodatime));

    }

}