直接コード上の多くのゴシップ
/// <要約> /// 時間展開 /// </要約> パブリック 静的の クラスDateTimeExtension { /// <要約> /// 取得タイムスタンプ /// </要約> /// ます。<param name = " DT "> 時間</ param>の /// <PARAM NAME ="ミリ秒「> ミリ秒かどうか、真のミリ秒(デフォルト)</ param>の /// <戻り値> </戻り値> 公共の 静的な ロング ToTimestamp(この日時DT、BOOLミリ秒= trueに) { / * 100ナノ秒、1ティック= 100nsで、10,000,000除算(S)、10000(ミリ秒)の単位で*ダニ * S(秒)、MS(ミリ秒)、マイクロ秒(マイクロ秒)、NS(NS )、1S = 1000msの、MS 1 = 1000、μ1、μ= 1000ns * / INT除数=ミリ秒?10000:10000000 ; ロング dt_ticks = dt.ToUniversalTime()マダニ;. リターン(dt_ticks - Const.TiksUtc1970)/ 除数; } // / <まとめ> /// スタンプは、変換失敗(例えば、タイムスタンプが無効である)リターンがNULL、時間に換算 /// </要約> /// <PARAM NAME = "タイムスタンプ"> タイムスタンプ</ PARAM> / // ます。<param name = "ミリ秒"> ミリ秒かどうか、真のミリ秒(デフォルト)</ param>の /// <PARAM NAME = "localtimeの"> ローカルタイムを出力するかどうかを、真の現地時間(デフォルト値)</ param>の /// <リターンA> </リターンA> 公共の 静的な日時?ToDateTime(この ロングタイムスタンプ、BOOLミリ秒= trueに、BOOL LOCALTIME、= trueに) { 試み { int型 MS =ミリ秒?10000:10000000 ; VARの DT = 新新のDateTime(Const.TiksUtc1970タイムスタンプ* + MS、DateTimeKind.Utc); IF(localtimeの、) 公共の静的な日時?ToDateTime(この文字列 タイムスタンプ、BOOLミリ秒= 真、BOOL LOCALTIME = 真) { 場合(長い .TryParse(タイムスタンプ、アウト 長いTS)) { リターンts.ToDateTime(ミリ秒、LOCALTIME)。 } 戻り ヌル。 } }
/// <まとめ> /// 定数定義 /// </要約> パブリック クラスのConst { /// <まとめ> /// 日時形式 /// </要約> 公共 CONST 文字列 DateTimeFormatString = " YYYY- DD HH-MM:MM:SS " ; /// <要約> /// 日時フォーマット /// </要約> 公共 CONST 文字列 DateHmFormatString = " YYYY-MM-DD HH:MM " ; /// <要約> /// 日付フォーマット /// </要約> 公共 のconst 文字列 DateFormatString = " YYYY-MM-DD " 。 /// <要約> /// UTC 1601年1月1日到UTC 1970年1月1日的ダニ /// </要約> 公共 CONST 長い TiksUtc1970 = 621355968000000000 。 }