2つの日付間の時間差を計算するC#プログラム
C#では、DateTimeオブジェクト同士を引き算することで、2つの日付間の時間差を簡単に求められます。その結果はTimeSpan型として返され、時間・分・秒などさまざまな単位で差を取得できます。
ここでは、2つの日付の差を「時間」単位で求める方法を、サンプルコードとともに解説します。
処理の手順
1. 2つの日付を設定する
まず、DateTime構造体を使って、比較対象となる2つの日付を作成します。
DateTime date1 = new DateTime(2018, 7, 15, 08, 15, 20); DateTime date2 = new DateTime(2018, 8, 17, 11, 14, 25);
2. 日付の差を取得する
次に、2つの日付を減算すると、その差がTimeSpan型として得られます。
TimeSpan ts = date2 - date1;
3. 時間差を取得する
TimeSpanのTotalHoursプロパティを使えば、日付間の差を時間数(小数点以下を含む)として取得できます。
ts.TotalHours
完全なサンプルコード
以上の手順をまとめた、実行可能な完全なコードは以下の通りです。
using System;
using System.Linq;
public class Demo {
public static void Main() {
DateTime date1 = new DateTime(2018, 7, 15, 08, 15, 20);
DateTime date2 = new DateTime(2018, 8, 17, 11, 14, 25);
TimeSpan ts = date2 - date1;
Console.WriteLine("No. of Hours (Difference) = {0}", ts.TotalHours);
}
}実行結果
No. of Hours (Difference) = 794.984722222222
補足:他の単位で差を取得するには
TimeSpanには、TotalHours以外にも便利なプロパティが用意されています。用途に応じて使い分けましょう。
- TotalDays … 差を「日」単位で取得
- TotalMinutes … 差を「分」単位で取得
- TotalSeconds … 差を「秒」単位で取得
このように、DateTimeの減算とTimeSpanのプロパティを組み合わせることで、日付や時刻の差を柔軟に扱うことができます。
-
JavaScriptで2つの配列の対称差を求める方法
対称差(Symmetric Difference)とは数学において、2つの集合AとBの対称差は「A △ B」と表記されます。対称差とは、AまたはBのどちらか一方にのみ属し、両方には属さない要素すべてからなる集合として定義されます。具体例例えば、以下のような2つの配列があるとします。const A = [1, 2, 3, 4, 5, 6, 7, 8]; const B = [1, 3, 5, 6, 7, 8, 9];この場合、AとBの対称差は次のようになります。const diff = [2, 4, 9];2と4は配列Aにのみ存在し、9は配列Bにのみ存在します。両方の配列に共通して含まれる1、3
-
Androidで2つの日付の差分(日数)を取得する方法【サンプルコード付き】
はじめに この記事では、Androidアプリで2つの日付の差分(日数)を取得する方法を、実際に動作するサンプルコードとともに解説します。日付の差分計算は、利用期間の表示やイベントまでの残り日数のカウントなど、さまざまな場面で役立つ基本的な処理です。 実装の手順 ステップ1:Android Studioで新規プロジェクトを作成 Android Studioを起動し、メニューから「File」→「New Project」を選択します。必要な項目をすべて入力して、新しいプロジェクトを作成しましょう。 ステップ2:レイアウトファイル(activity_main.xml)の編集 res/layout/ac