質問
ユーザーが入力した生年月日を取得してミリ秒に変換して、彼らが別の惑星の年齢を計算できるようにするにはどうすればよいですか
これが私がこれまでに持っているコードです:
DateFormat df = new SimpleDateFormat("MM dd yyyy");
Date dateBirth = df.parse(birthdate);
Calendar calBirth = new GregorianCalendar();
calBirth.setTime(dateBirth);
編集1:はい、ユーザーの生年月日と現在の時刻の間にミリ秒を取得して、それを1年の惑星の日々で分割したいと考えています
解決
datebirth.getTime() それがあなたが探しているものであるなら、エポック以来のミリ秒数をあなたに与えますか?
編集 -
現在と誕生日の違いを得るために、あなたは明らかに日付オブジェクトとして今すぐ取得し、それをミリ秒に変換して、例: now.GetTime() - dateBirth.GetTime()
.
他のヒント
Date d = new Date();
long msSinceBirth = d.getTime() - dateBirth.getTime();
これは、ユーザーが過去に生まれることを前提としています。タイムトラベラーはネガティブな値を生成します msSinceBirth
.
私は質問を完全に理解しているかどうかよくわかりませんが、カレンダーにはその中に方法があります...
getTimeInMillis
public long getTimeInMillis()
このカレンダーの現在の時間を長い時間として取得します。
返品:現在の時刻は、エポックからのUTCミリ秒です。
参照:getTime(), setTimeInMillis(long)
所属していません StackOverflow