如何将日期时间字符串转换为整数数据类型?

时间:2013-03-09 04:32:54

标签: java string date integer

String timerStop1 = String.format("%02d", hours) + ":"+String.format("%02d", minutes) + ":"
                  + String.format("%02d", seconds);

我正在使用上面连接的字符串值,我想将其转换为整数以在我的Android应用程序中使用。我该怎么做?

4 个答案:

答案 0 :(得分:4)

第一步是将 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); 

但是,这只会将时间设为秒(整数),而不是时间戳!

更新:

而且,正如科林指出的那样,鉴于您已经可以访问变量:小时,分钟,秒 - 为什么不像他建议的那样 - 这是完全正确的?

https://stackoverflow.com/a/15307211/866930

那是因为OP想要知道如何将HH:MM:SS字符串转换为整数 - 如果是这样,那么这是最通用的方式,IMO。

答案 1 :(得分:1)

无法将timerStop1解析为整数,因为timerStop1包含数字以外的字符。

答案 2 :(得分:1)

您可以使用变量小时,分钟,秒。假设通过转换为整数,您需要总秒数。

int time = seconds + (minutes * 60) + (hours * 3600);

答案 3 :(得分:-1)

tostring()方法没有必要

Integer.parseInt(timerStop1);