2014-10-22 71 views
3

我目前正在为Android设备开发一个简单的Time-Manager应用程序。 我的问题:我从服务器获取时间值(看起来像这样 - >6:51)。 现在我想分开小时和分钟,我想要的值是不断更新在给定时间内分隔小时数

我已经看过joda-time但是找不到任何能够解决我的问题的东西,如果有什么解决方案的话。

我应该尝试提取数字并构建我的时间格式吗?还是有更好更简单的解决方案? 如果您建议我提取数字,如何解决9小时以上的问题。

感谢您的帮助和对英语不好的抱歉。

+0

的[在一个持续时间或间隔约达时间分钟]可能重复(http://stackoverflow.com/questions/9214630/joda-time-minutes-in-a-duration-or-interval) – fejese 2014-10-22 08:33:31

回答

3

拆分时间。

String time="6:51"    //which is from server; 
String splitTime[]=time.split(":"); 
String hours=splitTime[0]; 
String minutes=splitTime[1]; 
+0

更好首先准备一个数组,然后使用split将其填充** **一次**,以最大限度地减少拆分操作。 – 2014-10-22 07:56:47

+0

Wroks完美无瑕,非常简单!谢谢。 – 2014-10-22 08:08:26

1

如果你有字符串格式为hh:mm,那么你可以使用String.split将它们分开。

String arr [] = time.split(":"); 
0

只是将时间的值解析为字符串并使用split来分隔小时和分钟。然后,您可以将其再次转换为int以备将来使用。

String Time = (String) time; 
String Hour=time.split(":")[0]; 
String Minute=time.split(":")[1]; 
//If you want to use Hour and Minute for calculation purposes: 
int hour=Integer.parseInt(Hour); 
int minute=Integer.parseInt(Minute); 

应该没有问题,如果时间> 9

1

你是从服务器获取时间字符串"6:51"

org.joda.time.LocalTime#parse(String)会帮到你。 LocalTime代表没有日期的时间。解析字符串后,您将能够调用方法getHourOfDay,getMinuteOfHour

0

Joda-Time 2.5。

LocalTime localTime = LocalTime.parse("6:51"); 
int hour = localTime.getHourOfDay(); 
int minute = localTime.getMinuteOfHour(); 
相关问题