c#读取毫秒时间戳
时间: 2023-07-27 19:13:32 浏览: 55
你可以使用 `DateTimeOffset` 类来读取毫秒时间戳,具体实现如下:
```csharp
long milliseconds = 1625193386000;
DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeMilliseconds(milliseconds);
Console.WriteLine(dateTimeOffset.ToString("yyyy-MM-dd HH:mm:ss.fff")); // 输出:2021-07-02 17:16:26.000
```
这里的 `1625193386000` 是一个毫秒时间戳,`FromUnixTimeMilliseconds` 方法可以将其转换为 `DateTimeOffset` 对象,然后你可以使用 `ToString` 方法将其转换为指定格式的字符串,这里的 `yyyy-MM-dd HH:mm:ss.fff` 表示输出的格式为年-月-日 小时:分钟:秒.毫秒。
相关问题
c#获取系统毫秒时间戳
在 C# 中获取系统毫秒时间戳可以使用以下代码:
```csharp
long milliseconds = DateTimeOffset.Now.ToUnixTimeMilliseconds();
```
这将返回当前时间的毫秒时间戳。请注意,这需要 .NET Framework 版本 4.6 或更高版本。如果你的应用程序需要在旧版本的 .NET Framework 中运行,可以使用以下代码:
```csharp
long milliseconds = (DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).Ticks) / TimeSpan.TicksPerMillisecond;
```
这将以类似的方式返回当前时间的毫秒时间戳,但是使用了不同的计算方法。
Oracle 毫秒时间戳
Oracle数据库中存储的时间戳是以 "YYYY-MM-DD HH24:MI:SS.FF" 格式存储的,默认情况下,FF 只有两位小数,表示毫秒。如果需要精确到微秒或更高精度,可以设置 FF 的位数。可以使用以下SQL查询获取当前时刻的毫秒时间戳:
```
SELECT (SYSDATE - TO_DATE('1970-01-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS')) * 86400000 AS MILLISECOND_TIMESTAMP FROM DUAL;
```
这个查询会返回当前时刻的毫秒时间戳。