android - 在 date.gettime() 中获取负值

标签 android date simpledateformat datetime-format

遇到一个问题,我试图将字符串值解析为日期,当我尝试执行 date.getTime() 时,我得到了负值。

这是我正在解析的字符串“01:00:07”。 这是我得到的日期对象中的值“Thu Jan 01 01:00:07 GMT+05:30 1970”。 仍在 getTime() 中,我得到负值“-16193000”

实现代码:

long sum = 0;
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("hh:mm:ss");// I have also tried "HH:mm:ss" format. it gives same result
    Date date = simpleDateFormat.parse(duration);//duration is "01:00:07"
    sum= date.getTime();

最佳答案

问题是 TimeZone。您将通过提供 TimeZone

获得正确的时间
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));

simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));

关于android - 在 date.gettime() 中获取负值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53864387/

相关文章:

java - 运行时 ImageView 未显示在启动器 Activity 中

java - 在 Google Android 中以编程方式连接到 WiFi?

mysql - 如何合并不同的日期类型

Java日期解析问题-SimpleDateFormat自动递减月份

Android Nougat 多窗口 minHeight

java - android 的 hello world 教程应用程序不工作

mysql - 如何在 WebService 调用中使用 %20 而不在 UITextField 中显示它

linux - 使用 date 命令比较时间

java - 用于日期解析的 SimpleDateFormat 的替代方案

Java:简单的字符串到日期解析失败并出现异常