【问题标题】:How to convert HH:mm:ss into int?如何将 HH:mm:ss 转换为 int?
【发布时间】:2015-12-17 09:59:40
【问题描述】:
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
int s = Integer.parseInt(sdf.format(new Date()).replace(":"," "));

我正在使用 integer.parseInt 将字符串中给出的时间转换为 int,但给出数字不是 calid 异常

【问题讨论】:

  • 你的输入字符串在哪里,格式为 "HH:mm:ss" ???

标签: android datetime


【解决方案1】:

这是解决方案:

SimpleDateFormat sdf = new SimpleDateFormat("HHmmss");
int s = Integer.parseInt(sdf.format(new Date()));

测试:

Log.d("Parsed date", "date: "+s);

结果: D/解析日期:日期:111405

【讨论】:

    【解决方案2】:

    试试这个

    String time = "10:10:00";
    String[] timeArray = time.split(":");
    int HH = Integer.parseInt(timeArray[0]);
    int mm = Integer.parseInt(timeArray[1]);
    int ss = Integer.parseInt(timeArray[2]);
    

    【讨论】:

      【解决方案3】:

      您需要改用"" empty space,因为数字中没有空格。

      SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
      int s = Integer.parseInt(sdf.format(new Date()).replace(":",""));
      

      【讨论】:

        【解决方案4】:

        您将: 替换为一个空格,从而为您留下类似11 03 17 的字符串。这不是一个有效的整数。

        一种更简单的方法是忽略格式中已经存在的: 字符:new SimpleDateFormat("HHmmss");

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-09-18
          • 1970-01-01
          • 2021-05-18
          • 2018-07-11
          • 1970-01-01
          • 1970-01-01
          • 2014-05-22
          • 1970-01-01
          相关资源
          最近更新 更多