.net column

.NET開発者のためのブログメディア
計算記号

C#のTimeSpan構造体で時間の情報を操作する方法

2020年04月13日

C#では、「TimeSpan構造体」を使って時間の情報を操作することができます。今回は、TimeSpan構造の概要から実際の使い方までを紹介していきたいと思います。ぜひ、参考にしていただければ幸いです。

PG
私が時間の処理をプログラムで書くと結構複雑になってしまいます……どうすれば良いでしょうか?
PM
そんな時はTimeSpan構造体を活用するのがおすすめです。ちなみに、日時を扱いたい方はこちらの記事を参考にしてみてくださいね。
C#のDateTime構造体で文字列に変換する際のフォーマット

TimeSpan構造体とは?

TimeSpan構造体とは、一言で表すと「時間間隔を表す構造体」です。1秒未満の時間情報の取得はもちろん、加算や減算などの計算にも活用できて便利です。あまりピンと来ないかもしれませんが、ここでは「時間を処理するために便利なものなんだな」と覚えておけば問題ありません。

そして、TimeSpanメソッドには下記のような便利なメソッドがすでに用意されています。

メソッド名単位
FromDays
FromHours時間
FromMinutes
FromSeconds
FromMillisecondsミリ秒
FromTicksタイマ刻み秒

例えば90分のTimeSpanオブジェクトを作成したい場合は、以下のように書きます。

これらのメソッドを活用すれば、プログラム上で分(90分)を時間(1.5時間)に変換するような処理を書かなくて済むようになります。

TimeSpan構造体を実際に使ってみよう

TimeSpan構造体について理解できたところで、ここでは実際にTimeSpan構造体を使っていきたいと思います。
※今回は、指定した日付に1時間30分足した結果を取得してみたいと思います。

上述のコードを実行すると、このような結果になります。
実行結果

きちんと、2019/1/1 12:30:00に1時間半足した日時が表示されていますね。

PG
なるほど。確かにこれなら時間の計算も簡単にできますね。
PM
加えてシンプルで短いコードになるため、コードの可読性向上にもつながりますよ。

TimeSpan構造体で時間情報の処理ができる

今回は、TimeSpan構造体の概要や使い方を紹介していきました。TimeSpan構造体を使用すれば、複雑になりがちな時間の処理を少ないコード数で行うことができます。時間を扱うことが多いプログラムを作成しているのであれば、活用してみると良いでしょう。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)