2007年11月08日

[.NET]エポックタイムスタンプを取得する

C#で、グリニッジ標準時刻の経過秒数(エポック秒)を取得したい...
と思ったら一発でできる関数が無いのでした。

仕方ないので自作したのが以下です。

 ※体裁を整えるため、インデントを意図的に全角空白にしています。
  コピペではコンパイル通らないので、ご注意下さい

━━━━━━━━━━━━━━━
#region GetEpocTime
/// <summary>
/// グリニッジ経過時間(秒)を取得します。
/// </summary>
/// <returns>int グリニッジ経過時間(秒)</returns>
/// <remarks>
///   戻り値がint型なのは、アプリの都合上。
///   この関数は、2038年問題で死亡します。
/// </remarks>
private int GetEpocTime()
{
  // グリニッジ標準の現在時刻
  DateTime dtNow = DateTime.Now.ToUniversalTime();
  
  // グリニッジ標準の開始時刻
  DateTime dtEpoc = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
  
  // グリニッジ経過時刻を取得
  TimeSpan tsEpoc = dtNow.Subtract(dtEpoc);
  
  // 秒で返す(都合によりint型)
  return (Convert.ToInt32(tsEpoc.TotalSeconds));
}
#endregion
━━━━━━━━━━━━━━━

●参考資料
[日付や時刻を処理する]
http://itpro.nikkeibp.co.jp/article/COLUMN/20061127/254970/

[PHPにおける日付と時刻の混乱]
http://codezine.jp/a/article/aid/1816.aspx?p=2
posted by てるとみ at 00:19| Comment(0) | TrackBack(0) | プログラミング/.NET関係 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/65182215
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック