为什么python 2.7在UTC日期时间对象的isoformat字符串末尾不包含Z字符(Zulu或零偏移量)?
>>> datetime.datetime.utcnow().isoformat()
'2013-10-29T09:14:03.895210'
Run Code Online (Sandbox Code Playgroud)
而在javascript中
>>> console.log(new Date().toISOString());
2013-10-29T09:38:41.341Z
Run Code Online (Sandbox Code Playgroud) 如果我有一个标签:
<span class="utctime">2010-01-01 11:30 PM</span>
Run Code Online (Sandbox Code Playgroud)
我想要一个jquery脚本或插件将每个utctime类转换为当前用户的浏览器本地时间.在写一篇文章之前我更愿意找到它.
如果夏令时生效,并且日期对象已保存到数据库中(UTC格式),您将检索该数据库以在视图中显示它(例如视图中asp.net-mvc).
您可以使用此方法执行此操作:
public static DateTime ConvertToLocalTimeFromUtcTime(DateTime utcDate, string timeZoneId)
{
TimeZoneInfo localZone = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId);
DateTime localTime = TimeZoneInfo.ConvertTimeFromUtc(utcDate, localZone);
if (localZone.IsDaylightSavingTime(localTime))
localTime = localTime.AddHours(1); // is this needed !?
return localTime;
}
Run Code Online (Sandbox Code Playgroud)
问题是,是否TimeZoneInfo.ConvertTimeFromUtc()处理DST或您是否必须自己检查并在日期对象中添加或减去X小时?
通过将日期对象转换为UTC格式来将日期对象持久化到数据库时的相同问题ToUniversalTime().
我想获得手机用户的时区,这样我可以添加或者到.减去与UTC时间,我从我的API获得,然后就这些操作(通知,例如).
我只找到了如何使用DatePickerIOS添加偏移量,但没有别的......是否可以从前面获取它?
我有一个ASP.NET MVC应用程序,它以UTC格式存储所有SQL DateTime,因此无论客户端从哪个时区访问该站点,时间都是一致的.
现在,我想重新向用户显示正确的时间,所以每次在我的View中显示时间我都会使用:
timeVariable.ToLocalTime();
Run Code Online (Sandbox Code Playgroud)
但是,.ToLocalTime()基于服务器,而不是客户端.
我是否需要在客户端上使用JavaScript处理此问题?
我可能可以将时区作为请求的一部分传递并让控制器处理该事件,但我假设有更好的方法来执行此操作.或者不存在?
在此先感谢您的帮助!
-Matt
我正在阅读很多关于时区,偏移,utc,当地时间,javascript函数,DST,培根的内容,而我正试图将这些内容整合在一起,为我的应用程序构建一个可靠/正确的结构.
假设我的应用程序类似于StackOverflow.
这就是我在做的......
DateTimeOffset.TimeZoneID.2012-07-19T14:30:00-03:00.我有几个问题......
关于我的服务器(单个服务器)......它应该以"中性"UTC(+00:00)运行吗?如果将来我们迁移到服务器在不同位置运行的服务器场,该怎么办?
目前,我正在将日期存储为DateTimeOffset.我正在阅读关于保存的内容,TimeZoneID但我认为没有任何用处.我错过了什么吗?
或者我应该像DateTimeUtca 一样存储日期TimeZoneID并手动转换每个日期与TimeZone班级?
在客户端上转换数据是否安全?或者日期转换应该始终在服务器端?
使用我目前的方法.DST会受到尊重吗?
如果我在中选择一个日期<DateInput>,则datetime在用户的时区中(例如2017-07-01T00:00:00.000 + 02:00),但是当它发送到服务器时,它会转换为UTC并最终以2017- 06-30T22:00:00.000Z,落后一天。
底层后端不知道用户的时区,因此无法将日期后移,因此在剥离时间后,日期将以错误的日期结束。
这些选项中的任何一个都可以正常工作:
DateInput 文档,但没有找到任何更改行为的选择。DateTimeFormat但是尽管尝试了几次,但还是无济于事。我有一个ASP.NET MVC应用程序。该应用程序使用Razor作为视图引擎。我需要向用户显示日期/时间。我的挑战是,DateTime模型的属性位于UTC时间。我想将时间显示为用户的本地时间。目前,我有以下内容:
<div>
@if (Model.LastModifiedOnUTC.HasValue) {
Html.Raw(Model.LastModifiedOnUTC.ToString());
}
else {
<span>This record has not been updated</span>
}
</div>
Run Code Online (Sandbox Code Playgroud)
我想将其显示DateTime为“ 2015年2月11日,星期三,下午3:27”。但是,我不确定如何执行此操作。当我执行上述操作时,将打印一个空字符串。这对我来说毫无意义。
感谢您的任何见解
我有一个 UTC 日期时间字符串和时区名称。我是从第三方 API 获得的。我需要使用 JavaScript/NodeJS 将 UTC 时间转换为该时区的本地时间,并获取该时区的当前时间。是否有任何可用的库/方法?
var timezone = "America/New_York";//This will always be in Olson format.
var UTCTime = "2017-09-03T02:00:00Z";
var localTime; //I need to find the equivalent of UTCTime for America/New_York
var currentTime; //Current time of time zone America/New_York
Run Code Online (Sandbox Code Playgroud) 我正在服务器上存储Utc datetime,并通过json请求数据在客户端上显示.问题是服务器按时区返回时间,该时区与客户端不同.如何在没有硬编码偏移量的情况下在客户端上显示本地dateTime?
我正在使用asp.net mvc并在SQL Server 2008数据库中将日期和时间作为'datetime'.数据库中的DateTime格式为2013-03-29 08:00:00.000.
我从 API 中获取此类"2019-05-05T10:30:00Z"时间。但我需要像这样转换它"10:30 AM (3:30 PM Your Time)"。我在客户端使用reactJs。如何将时间转换为用户当前时区?
我多次尝试将utc datetime转换为本地日期时间,但我失败了.我的utc日期时间格式是
3月8日星期五23:12:27 UTC + 0200 2013
我的JavaScript代码也是
var time = Date(param_time);//param_time is /Date(1362866006646)/
Run Code Online (Sandbox Code Playgroud)
然后时间是太阳3月10日00:21:54 UTC + 0200 2013我需要将datetime作为2008-01-28T20:24:17Z因为我将本地日期时间转换为漂亮的日期时间.
http://ejohn.org/files/pretty.js
我怎样才能做到这一点 ?我在stackoverflow上查看了很多问题,但是没有人能够正常工作.谢谢.
javascript ×6
datetime ×4
asp.net-mvc ×3
timezone ×3
c# ×2
utc ×2
dst ×1
iso8601 ×1
jquery ×1
json ×1
material-ui ×1
node.js ×1
python ×1
python-2.7 ×1
razor ×1
react-native ×1
reactjs ×1
time ×1
timestamp ×1