Java 如何将%02d:%02d:%02d转换为双精度?
我正在使用Java 如何将%02d:%02d:%02d转换为双精度?,java,android,Java,Android,我正在使用文本视图设置时间 Min_txtvw.setText(String.format(mTimeFormat, hour, min, sec)); 现在 average=距离*60*60/秒//查找平均值的我的函数 几秒钟之内,我必须从Min_txtvw那里得到时间 我像下面这样做,但它给出了NumberformatException try { String s = Min_txtvw.getText().toString();
文本视图设置时间
Min_txtvw.setText(String.format(mTimeFormat, hour, min, sec));
现在
average=距离*60*60/秒
//查找平均值的我的函数
几秒钟之内,我必须从Min_txtvw那里得到时间
我像下面这样做,但它给出了NumberformatException
try {
String s = Min_txtvw.getText().toString();
double d = Double.valueOf(s.trim()).doubleValue();
System.out.println("average distance is"+d);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
如何转换TextView
值并将其转换为双精度?您将获得NumberformatException
,因为变量S包含“:”字符串值,您需要使用replaceAll()
方法替换这些值
试试下面的方法
try {
String s = Min_txtvw.getText().toString();
s.replaceAll ( ":","" );
double d = Double.valueOf(s.trim()).doubleValue();
System.out.println("average distance is"+d);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
在这一行之后String s=Min_txtvw.getText().toString()代码>输出System.out.println(s)代码>并告诉我它显示了什么04-25 12:02:25.841:I/System.out(12690):s的值是00:01:18 04-25 12:02:25.841:I/System.out(12690):s的格式化值是00:01:18O_o,我建议您最好及时转换它,这样您就可以得到它的长值。另一个很长的方法是获取小时、分钟,然后乘以60,然后得到秒。