Android/Java の日付の差を日数で求める
Android/Java では、2 つの日付と日付の差を計算する方法がいくつかあります。それを日数で表現します。 1 つの方法では、Calendar クラスを使用します。
現在の日付を取得するには、次のコードを使用できます。
TextView txtViewData; txtViewDate.setText("Today is " + android.text.format.DateFormat.getDateFormat(this).format(new Date()));
ただし、yyyy/mm/ 形式の別の日付があるため、 dd、必要な変換を行うことが重要です。以下に例を示します:
Calendar thatDay = Calendar.getInstance(); thatDay.set(Calendar.DAY_OF_MONTH, 25); thatDay.set(Calendar.MONTH, 7); // 0-11 so 1 less thatDay.set(Calendar.YEAR, 1985); Calendar today = Calendar.getInstance(); long diff = today.getTimeInMillis() - thatDay.getTimeInMillis(); //result in millis
ここで、日数の差を概算するには、次の式を使用できます:
long days = diff / (24 * 60 * 60 * 1000);
yyyy/mm 形式の文字列から日付を解析するには/dd では、次のコードを使用できます:
String strThatDay = "1985/08/25"; SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd"); Date d = null; try { d = formatter.parse(strThatDay);//catch exception } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } Calendar thatDay = Calendar.getInstance(); thatDay.setTime(d); //rest is the same....
日付文字列の部分文字列に対して Integer.parseInt() メソッドを使用して数値を抽出します。
このメソッドは近似値であることに注意してください。正確な日付を計算するには、JodaTime などのより信頼性の高いライブラリを使用することをお勧めします。
以上がAndroid/Java を使用して 2 つの日付の差を日単位で計算する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。