2016-11-20 5 views
0

私のサーバは、これまでのような文字列フォーマットを返していますが、これは2 minutes agoですが、今は秒に変換する必要があります。私はスペース区切り文字を使用して文字列を分割し、最初のテキストを取得すると思ったが、5 hour 43 minutes agoなどのインスタンスを返す私のサーバーのケースがあります。私の質問はこれです、この形式の変換は、これらのインスタンスの心はちょうど秒ですか?"time ago"をandroidの秒に変換する

答えて

1

私は、あなたの「時間の前」から秒までの変換を行うことができる特定のライブラリや方法はないと思います。あなたにとって最良の選択肢は、あなたのサーバーによって返された "Time ago"文字列を解析して、自分で変換を行うことです。最も簡単な方法は、文字列をスペース境界で分割し、時間と分の値を取得することです。

public static int timeAgoToSeconds(String timeAgo) { 
    int timeInSec = 0; 
    String []myStringArray = timeAgo.trim().split(" "); 

    if(myStringArray.length==3){ 
    timeInSec = Integer.valueOf(myStringArray[0]) *60; 
    } 

    if(myStringArray.length==5){ 
     timeInSec = Integer.valueOf(myStringArray[0]) *3600 + Integer.valueOf(myStringArray[2]) * 60; 
    } 

return timeInSec; 

} main()メソッドで

試験:

String timeAgoHHmm = "5 hour 43 minutes ago"; 
    String timeAgoMM = "2 minutes ago"; 

    System.out.println(timeAgoToSeconds(timeAgoHHmm));//20580 
    System.out.println(timeAgoToSeconds(timeAgoMM));//120 
関連する問題