String timerStop1 = String.format("%02d", hours) + ":"+String.format("%02d", minutes) + ":"
+ String.format("%02d", seconds);
我正在使用上面连接的字符串值,我想将其转换为整数以在我的 android 应用程序中使用。我该怎么做呢?
第一步是将HH:MM:SS格式的时间(这是您的字符串的格式)转换为秒,如下所示:
String timerStop1 = String.format("%02d", hours) + ":" + String.format("%02d", minutes) + ":" + String.format("%02d", seconds);
String[] timef=timerStop1.split(":");
int hour=Integer.parseInt(timef[0]);
int minute=Integer.parseInt(timef[1]);
int second=Integer.parseInt(timef[2]);
int temp;
temp = second + (60 * minute) + (3600 * hour);
System.out.println("seconds " + temp);
但是,这只获取时间为秒(整数),而不是时间戳!
更新:
而且,正如 Colin 指出的那样,鉴于您已经可以访问变量:小时、分钟、秒 - 为什么不按照他的建议去做 - 这是完全正确的?
https://stackoverflow.com/a/15307211/866930
那是因为 OP 想知道如何将 HH:MM:SS 字符串转换为整数 - 如果是这样,那么这是最通用的方法,IMO。
由于包含数字以外的字符,因此无法解析timerStop1
为整数。timerStop1
你可以只使用变量小时,分钟,秒。假设通过转换为整数,您需要总秒数。
int time = seconds + (minutes * 60) + (hours * 3600);
该tostring()
方法不是必需的
Integer.parseInt(timerStop1);