因為七牛的私庫下載下傳路徑中的逾時時間需要用到Unix時間戳,特此記錄一下
Unix時間戳( Unix timestamp):從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<code>public</code> <code>class</code> <code>UnixTimeUtil</code>
<code>{</code>
<code> </code><code>/// <summary></code>
<code> </code><code>/// 将dateTime格式轉換為Unix時間戳</code>
<code> </code><code>/// </summary></code>
<code> </code><code>/// <param name="dateTime"></param></code>
<code> </code><code>/// <returns></returns></code>
<code> </code><code>public</code> <code>static</code> <code>int</code> <code>DateTimeToUnixTime(DateTime dateTime)</code>
<code> </code><code>{</code>
<code> </code><code>return</code> <code>(</code><code>int</code><code>)(dateTime - TimeZone.CurrentTimeZone.ToLocalTime(</code><code>new</code> <code>DateTime(1970, 1, 1))).TotalSeconds;</code>
<code> </code><code>}</code>
<code> </code><code>/// 将Unix時間戳轉換為dateTime格式</code>
<code> </code><code>/// <param name="time"></param></code>
<code> </code><code>public</code> <code>static</code> <code>DateTime UnixTimeToDateTime(</code><code>int</code> <code>time)</code>
<code> </code><code>if</code> <code>(time < 0)</code>
<code> </code><code>throw</code> <code>new</code> <code>ArgumentOutOfRangeException(</code><code>"time is out of range"</code><code>);</code>
<code> </code><code>return</code> <code>TimeZone.CurrentTimeZone.ToLocalTime(</code><code>new</code> <code>DateTime(1970, 1, 1)).AddSeconds(time);</code>
<code>}</code>
還可以這樣子求Unix時間戳:
(DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000