現在の日付(DateTime.Now)の「DateTime」変数があります。例として、これを OADate-Format (41392,524432) に変換できます。しかし、どうすればこれを変換できますか?日付なしで時間を取得しているだけです? たとえば、1 分 4 秒 (01:04) は、この形式では 0,04444444 です。
質問する
18884 次
2 に答える
10
OLE オートメーションの日付は、整数コンポーネントが 1899 年 12 月 30 日の午前 0 時前後の日数である浮動小数点数として実装されます。
おそらくそれを基準日として使用したいでしょう:
DateTime oaBaseDate = new DateTime(1899,12,30);
double result = oaBaseDate.Add(DateTime.Now.TimeOfDay).ToOADate();
または、マジック ナンバー (マジック デート) が気に入らない場合は、次のようにします。
DateTime oaBaseDate = DateTime.FromOADate(0);
double result = oaBaseDate.Add(DateTime.Now.TimeOfDay).ToOADate();
于 2013-04-28T10:53:03.847 に答える
1
現在の日付を減算してみてください。
double oaDate = DateTime.Now.ToOADate();
double result = oaDate - (int)(oaDate);
または
double result = oaDate - Math.Floor(oaDate);
于 2013-04-28T11:09:08.547 に答える