@@ -41,7 +41,7 @@ public partial class TimerHelper
4141 /// </summary>
4242 /// <param name="timestamp">毫秒时间戳。</param>
4343 /// <param name="utc">是否使用UTC时间。</param>
44- /// <returns>转换后的时间。</returns>
44+ /// <returns>转换后的时间。如果utc为false,则返回当前时区 (<see cref="CurrentTimeZone"/>) 的时间。 </returns>
4545 public static DateTime MillisecondsTimeStampToDateTime ( long timestamp , bool utc = false )
4646 {
4747 var dateTime = EpochUtc . AddMilliseconds ( timestamp ) ;
@@ -51,23 +51,23 @@ public static DateTime MillisecondsTimeStampToDateTime(long timestamp, bool utc
5151 }
5252
5353 return TimeZoneInfo . ConvertTimeFromUtc ( dateTime , CurrentTimeZone ) ;
54- return EpochLocal . AddMilliseconds ( timestamp ) ;
5554 }
5655
5756 /// <summary>
5857 /// 秒时间戳转时间
5958 /// </summary>
6059 /// <param name="timestamp">秒时间戳。</param>
6160 /// <param name="utc">是否使用UTC时间。</param>
62- /// <returns>转换后的时间。</returns>
61+ /// <returns>转换后的时间。如果utc为false,则返回当前时区 (<see cref="CurrentTimeZone"/>) 的时间。 </returns>
6362 public static DateTime TimestampToDateTime ( long timestamp , bool utc = false )
6463 {
64+ var dateTime = EpochUtc . AddSeconds ( timestamp ) ;
6565 if ( utc )
6666 {
67- return EpochUtc . AddSeconds ( timestamp ) ;
67+ return dateTime ;
6868 }
6969
70- return EpochLocal . AddSeconds ( timestamp ) ;
70+ return TimeZoneInfo . ConvertTimeFromUtc ( dateTime , CurrentTimeZone ) ;
7171 }
7272
7373 /// <summary>
@@ -254,11 +254,11 @@ public static DateTime UtcMillisecondsToUtcDateTime(long utcTimestampMillisecond
254254 /// <remarks>
255255 /// 此方法将Unix时间戳(从1970-01-01 00:00:00 UTC开始的秒数)转换为本地时区的DateTime
256256 /// 使用DateTimeOffset.FromUnixTimeSeconds进行转换
257- /// 返回的时间会根据系统时区自动调整
257+ /// 返回的时间会根据当前设置的时区 (<see cref="CurrentTimeZone"/>) 自动调整
258258 /// </remarks>
259259 public static DateTime UtcSecondsToLocalDateTime ( long utcTimestamp )
260260 {
261- return DateTimeOffset . FromUnixTimeSeconds ( utcTimestamp ) . LocalDateTime ;
261+ return TimeZoneInfo . ConvertTimeFromUtc ( DateTimeOffset . FromUnixTimeSeconds ( utcTimestamp ) . UtcDateTime , CurrentTimeZone ) ;
262262 }
263263
264264 /// <summary>
@@ -269,11 +269,11 @@ public static DateTime UtcSecondsToLocalDateTime(long utcTimestamp)
269269 /// <remarks>
270270 /// 此方法将Unix毫秒时间戳(从1970-01-01 00:00:00 UTC开始的毫秒数)转换为本地时区的DateTime
271271 /// 使用DateTimeOffset.FromUnixTimeMilliseconds进行转换
272- /// 返回的时间会根据系统时区自动调整
272+ /// 返回的时间会根据当前设置的时区 (<see cref="CurrentTimeZone"/>) 自动调整
273273 /// </remarks>
274274 public static DateTime UtcMillisecondsToDateTime ( long utcTimestampMilliseconds )
275275 {
276- return DateTimeOffset . FromUnixTimeMilliseconds ( utcTimestampMilliseconds ) . LocalDateTime ;
276+ return TimeZoneInfo . ConvertTimeFromUtc ( DateTimeOffset . FromUnixTimeMilliseconds ( utcTimestampMilliseconds ) . UtcDateTime , CurrentTimeZone ) ;
277277 }
278278
279279 /// <summary>
0 commit comments