Java 2つの日付の差を求める

Chat&Messenger チャットもメッセンジャーも!! Chat&Messenger チャットもメッセンジャーも!!
LAN上でチャットとメッセンジャーが簡単に利用できるフリーソフトChat&Messengerを紹介します。IP Messenger互換。付箋紙にも対応。

Java 2つの日付の差を求める

Java 2つの日付の差を求める

Java で、2 つの日付の差を求めるサンプルプログラムを紹介します。
サンプルプログラムでは比較対象の日付が、文字列( yyyy/MM/dd )の場合、java.util.Date の場合に対応しています。

日付の差を求める計算方法は以下となります。
  1. 最初に 2 つの日付を long 値に変換します。
    ※この long 値は 1970 年 1 月 1 日 00:00:00 GMT からの経過ミリ秒数となります。
  2. 次にその差を求めます。
  3. 上記の計算で出た数量を 1 日の時間で割ることで日付の差を求めることができます。
    ※1 日 (24 時間) は、86,400,000 ミリ秒です。

サンプルソース

実行

◆実行例
public static void main(String[] args) {
    int ret = differenceDays("2008/6/2","2008/6/1");
    System.out.println("結果1 = "+ret);
    
    ret = differenceDays("2008/6/1","2008/6/3");
    System.out.println("結果2 = "+ret);

    // 5月の日数は31日
    ret = differenceDays("2008/6/1","2008/5/1");
    System.out.println("結果3 = "+ret);

    // 6月の日数は30日
    ret = differenceDays("2008/7/1","2008/6/1");
    System.out.println("結果4 = "+ret);

    // 2008年は閏年のため2月の月末日付は29日
    ret = differenceDays("2008/3/1","2008/2/28");
    System.out.println("結果5 = "+ret);
}
◆実行結果
結果1 = 1
結果2 = -2
結果3 = 31
結果4 = 30
結果5 = 2

2つの日付の差を求める方法は比較的簡単ですが、月数の差を求める場合は少し難易度があがります。参考までに以下ご覧ください。
Java 2つの日付の月数の差を求める

このサンプルプログラムは Chat&Messenger の「カレンダー・スケジュール管理機能」で実際に利用しています。



ページトップへ
その他 - Windows100% 2008年9月号に掲載
ダウンロード - ダウンロード
更新履歴 - 更新履歴 2008
Java 日付・時刻 - Java 2つの日付の差を求める
Java 日付・時刻 - Java 2つの日付の月数の差を求める
Java 日付・時刻 - Java 日付・時刻の計算 加算・減算が簡単に
Web関連 - IE7で閉じる(window.close)と強制終了の対策
Web関連 - 10の翻訳エンジンを比較できるサイト 翻訳くらべ
Web関連 - Excelの表からHTMLテーブルタグ一発作成
Web関連 - IETester - 複数のIEバージョンの動作確認を行える便利なソフト
Java ファイル・I/O - Java 再帰的にファイルを検索
Thanks Links・リンク集 - おすすめフリーソフトまとめ
Java 特集 - Java タスクトレイのアイコンを表示・点滅
使い方・応用編 - タスクトレイに格納しメモリを節約
使い方・応用編 - ショートカットキー一覧
Thanks Links・リンク集 - Thanks Links
Java ファイル・I/O - Java ファイルコピー(バッファサイズを変更)
Java ファイル・I/O - Java ファイルコピー(簡単・高速)
その他 - 今後の開発予定
その他 - よくある質問
使い方 - 使い方、使用方法
使い方 - ソフト内の名称
使い方 - 起動及び初期設定方法
使い方 - メッセンジャー機能
使い方 - メッセージペインの各種アイコン説明
使い方 - チャット機能
使い方 - ログ参照
使い方 - ファイルやフォルダの送信・受信
使い方 - アプリケーションの環境設定
使い方 - ソート設定と優先順位設定
使い方 - メッセージの保管
使い方 - 不在モード
使い方 - カレンダー機能
使い方 - スケジュール管理機能
使い方 - キャプチャ機能
使い方 - 付箋機能
使い方 - 内部ブラウザ機能
使い方 - フォント設定
使い方・応用編 - configフォルダ及び各種設定ファイルについて
インストール・バージョンアップ - JREのインストール方法
インストール・バージョンアップ - インストール方法
インストール・バージョンアップ - バージョンアップ方法
Java 特集 - Java ログフィルタでHTTPを解析
インストール・バージョンアップ - バージョンアップとリリースポリシー
インストール・バージョンアップ - 初回起動時におけるWindowsファイアウォール注意点
ダウンロード - 過去のバージョンのダウンロード
Java 特集 - Java リフレクション が簡単に
その他 - 確認されている問題
IP Messenger 互換について - IP Messenger 互換について
更新履歴 - 更新履歴 2007
Java 日付・時刻 - Java 日付の妥当性・存在チェック
Java 日付・時刻 - Java 月末日付を取得する
Java 日付・時刻 - Java 現在(今日)の曜日を求める
Java 日付・時刻 - Java 日付文字列をDate型へ変換
Java 日付・時刻 - あらゆる日付・時刻文字列をDate、Calendar型へ変換
その他 - 掲示板・アンケート
インストール・バージョンアップ - アンインストール方法
インストール・バージョンアップ - ソフトに個別のJREを適用させる方法
Java ネットワーク - Java 実行しているマシンのホスト名を取得
その他 - iP ! (アイピー) 2008年 04月号に掲載
Java ネットワーク - Java IPアドレスからホスト名を取得
Java Swing - Java システムアイコンを抽出
Java Swing - Java クリップボードへコピー
Java ファイル・I/O - Java ディレクトリ内のファイル一覧を表示
Java ファイル・I/O - Java XMLEncoderでオブジェクトを保存
その他 - Vistaでのスクリーンショット
Java システム系 - Java 外部コマンドを実行し3つの結果を取得
Java システム系 - Java システムプロパティを見やすく出力
Java システム系 - Java メモリー使用量を取得
Java 文字列 - Java LPAD、RPADで整形
その他 - CM を見る
更新履歴 - 更新履歴 2006
Java 文字列 - Java 文字列内のURLをリンクに変換
Java 文字列 - Java ファイル名から拡張子を取り除く
Java 文字列 - Java ファイル名から拡張子を取得
その他 - 掲示板について
その他 - このサイトについて
その他 - プロフィール
Thanks Links・リンク集 - 相互リンク募集
Thanks Links・リンク集 - リンク集・ソフトウェア
コメント
この記事へのコメント
承認待ちコメント
このコメントは管理者の承認待ちです
2008/07/08(火) 16:19 | | #[ 編集]
承認待ちコメント
このコメントは管理者の承認待ちです
2008/08/20(水) 22:31 | | #[ 編集]
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://sattontanabe.blog86.fc2.com/tb.php/88-70a2eb11
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
メッセンジャー java messenger ダウンロード ip メッセンジャー ip messenger 互換 ip ポート