2016-08-31 11 views
0

時間がTextViewにある:HH:mm:ss:ms たとえば、私は時間が00:20:03:19です。私の関数は返されます-9596 どのようにこの時間をUNIX時間に変換するのですか?間違いはどこですか?ありがとう。TextViewからUnix時間を取得する

private long convertStringToUnixTime() throws ParseException { 
    String dateStr = "00:20:03:19"; 
    long unixTime; 

    DateFormat formatter = new SimpleDateFormat("HH:mm:ss:ms"); 
    unixTime = formatter.parse(dateStr).getTime(); 

    unixTime = unixTime/1000; 

    return unixTime; 
} 

答えて

0

ミリ秒は「S」です。それは3つです。あなたのフォーマットは "HH:mm:ss:SSS"でなければなりません。ここ

詳細情報:SimpleDateFormat

2

これは22803019を返します - エポックからのミリ秒です。

new SimpleDateFormat("HH:mm:ss:SSS").parse("00:20:03:19").getTime() 

あなたは秒またはミリ秒を望んでいたかどうか言わなかったが、あなたはミリ秒を解析しているので、私はそれ以降、その必要は分割しないようにしたいと思います。あなたは、パラメータとして

private long convertStringToUnixTime(String dateStr) throws ParseException { 
    return new SimpleDateFormat("HH:mm:ss:SSS").parse(dateStr).getTime(); 
} 
を文字列を与える場合

すべてのすべてで、あなたの方法は、はるかに短いかもしれません

関連する問題