2012-04-04 36 views
0

我连接了两个edittext框。一个有日期,另一个有时间。然后,我将它们改为一次,并将它们存储到数据库中。我运行调试器和日期对象似乎是正确的,直到我将它转换为一个int,然后它不正确转换。这里是我的代码时间没有转换成适当的int来存储分贝

Time userTime; 
    userTime= new Time(date.getText().toString().concat(time.getText().toString())); 

    int enteredTime = (int) ((userTime).toMillis(true)/1000); 

更新:出于某种原因,所有的信息是时区的userTime去下?任何有任何想法为什么

回答

0
int enteredTime = (int) ((userTime).toMillis(true)/1000); 

它总是比int更好地存储时间。我想这可能是你看错时间的原因。

尝试这样的事情如下:

long enteredTime = (long) ((userTime).toMillis(true)/1000); 
+0

不,我仍然得到相同的错误。 1969年继续显示 – Aaron 2012-04-04 21:26:39

+0

确定date.getText()。toString()。concat(time.getText()。toString())是否正确?我会先打印此值,然后将其传递到时间 – kosa 2012-04-04 21:27:57

+0

所有信息将进入userTime的时区 – Aaron 2012-04-04 21:34:25

0

你在哪里使用转换的时间?大多数Java代码喜欢毫秒而不是秒,因此请尝试省略除数1000.在这种情况下,请确保使用long而不是int