问题是SimpleDateFormat
似乎在实际时间戳上增加了 17 小时。
这应该是非常简单的事情。我不确定我做错了什么。我有一种方法可以将很长的纳秒转换为格式化的时间戳。它增加了17个小时。这是我的SSCCE
package playground;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.concurrent.TimeUnit;
/**
*
* @author kentcdodds
*/
public class NanosecondsToString {
public static void main(String[] args) {
long nanoseconds = 234236402;
Timestamp ts = new Timestamp(TimeUnit.MILLISECONDS.convert(nanoseconds, TimeUnit.NANOSECONDS));
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss:SSS");
String formatted = format.format(ts);
System.out.println(formatted);
}
}
输出:17:00:00:234
我在山区标准时间