Javaで日付が他の日付より大きいかどうかを確認する方法は?[重複している]をクリックします。
2023-09-11 21:42:35
質問
私は、ユーザがコマンドラインで入力した期間のレポートを生成するJavaアプリケーションに取り組んでいます。ユーザーは次のフォーマットで日付を入力する必要があります: dd-MM-yyyy
> java report startDate endDate
例
java レポート 01-01-2013 31-03-2013
コードでは、日付を2つの文字列で保存しています。私は、ユーザーによって入力された開始日が終了日よりも前の日付であることを確認する必要があります。 これらの2つの文字列を渡すことによって、私がこれを達成するのを助けることができる組み込み関数があるのでしょうか?
どのように解決するのですか?
あなたは 日付.前() または 日付.後() または 日付.equals() で日付の比較ができます。
から引用した はこちら :
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateDiff {
public static void main( String[] args )
{
compareDates("2017-01-13 00:00:00", "2017-01-14 00:00:00");// output will be Date1 is before Date2
compareDates("2017-01-13 00:00:00", "2017-01-12 00:00:00");//output will be Date1 is after Date2
compareDates("2017-01-13 00:00:00", "2017-01-13 10:20:30");//output will be Date1 is before Date2 because date2 is ahead of date 1 by 10:20:30 hours
compareDates("2017-01-13 00:00:00", "2017-01-13 00:00:00");//output will be Date1 is equal Date2 because both date and time are equal
}
public static void compareDates(String d1,String d2)
{
try{
// If you already have date objects then skip 1
//1
// Create 2 dates starts
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date1 = sdf.parse(d1);
Date date2 = sdf.parse(d2);
System.out.println("Date1"+sdf.format(date1));
System.out.println("Date2"+sdf.format(date2));System.out.println();
// Create 2 dates ends
//1
// Date object is having 3 methods namely after,before and equals for comparing
// after() will return true if and only if date1 is after date 2
if(date1.after(date2)){
System.out.println("Date1 is after Date2");
}
// before() will return true if and only if date1 is before date2
if(date1.before(date2)){
System.out.println("Date1 is before Date2");
}
//equals() returns true if both the dates are equal
if(date1.equals(date2)){
System.out.println("Date1 is equal Date2");
}
System.out.println();
}
catch(ParseException ex){
ex.printStackTrace();
}
}
public static void compareDates(Date date1,Date date2)
{
// if you already have date objects then skip 1
//1
//1
//date object is having 3 methods namely after,before and equals for comparing
//after() will return true if and only if date1 is after date 2
if(date1.after(date2)){
System.out.println("Date1 is after Date2");
}
//before() will return true if and only if date1 is before date2
if(date1.before(date2)){
System.out.println("Date1 is before Date2");
}
//equals() returns true if both the dates are equal
if(date1.equals(date2)){
System.out.println("Date1 is equal Date2");
}
System.out.println();
}
}
関連
-
が 'X-Frame-Options' を 'sameorigin' に設定したため、フレーム内に存在する。
-
[解決済み] この2回(1927年)を引き算すると、なぜおかしな結果になるのでしょうか?
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] Java Mapの各エントリを効率的に反復処理するには?
-
[解決済み] Javaでメモリーリークを発生させるにはどうしたらいいですか?
-
[解決済み] JavaでStringをintに変換するにはどうしたらいいですか?
-
[解決済み] JavaScriptの日付の書式設定方法
-
[解決済み] JavaScriptで現在の日付を取得するには?
-
[解決済み] Java で、あるコンストラクタを別のコンストラクタから呼び出すにはどうすればよいですか?
-
[解決済み] JavaScriptで日付の書式設定に関するドキュメントはどこにありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
XMLファイル操作時のjava.util.NoSuchElementExceptionを解決する方法。
-
プロジェクトの依存関係を解決できない。
-
Javaクラスが "Error occurred during initialization of boot layer "というエラーで実行される。
-
スレッド "main" での例外 java.lang.ArrayIndexOutOfBoundsException:5 エラー
-
が 'X-Frame-Options' を 'sameorigin' に設定したため、フレーム内に存在する。
-
名前 'XXX' を持つ Bean の作成に失敗しました。自動依存関係の注入に失敗しました 解決方法
-
Server Tomcat v9.0 Server at localhost の起動に失敗しました。
-
Spring Bootは、Tomcatの組み込みのmaxPostSizeの値を設定します。
-
Zipファイルの圧縮・解凍にantを使用する
-
[解決済み】Javaで日付を比較する方法は?[重複している]。