我有一个存储在我的在线服务器数据库中的日期GMT.我使用以下代码加载日期并将其转换为用户的时区:
if let messagedate = oneitem["timestamp"] as? String {
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.dateFromString(messagedate)
let source_timezone = NSTimeZone(abbreviation: "GMT")
let local_timezone = NSTimeZone.systemTimeZone()
let source_EDT_offset = source_timezone?.secondsFromGMTForDate(date!)
let destination_EDT_offset = local_timezone.secondsFromGMTForDate(date!)
let time_interval : NSTimeInterval = Double(destination_EDT_offset - source_EDT_offset!)
let final_date = NSDate(timeInterval: time_interval, sinceDate: date!)
curr_item.date = final_date
}
Run Code Online (Sandbox Code Playgroud)
现在我需要将日期转换回来GMT以便将它传递给服务器,但是我不知道如何将其转换回来GMT.
我最初的做法是:
$current = time(); // save this to column CURRENT_TIME with column type VARCHAR
//retrieve it like this
$retrieved = mysql_query(....) //assume query for getting the stored time value
$time = strtotime($retrieved);
Run Code Online (Sandbox Code Playgroud)
我遇到过以下方法:
gmstrftime处理GMTINT而不是VARCHAR列CURTIME或CURDATEUNIX_TIMESTAMPmysql函数没有一个使用DATETIME或TIMESTAMPmysql var类型.
你对这个有更好的方法吗?
我想在Perl中将日期/时间GMT 0转换为GMT -6.
例如,DHCP服务器租约时间采用以下格式:
2010/02/18 23:48:37
我正在尝试将该时间转换为Localtime区域(GMT -6),但需要它来兑现夏令时.
下面的脚本可能有点矫枉过正,但我不知道如何从这里开始.(任何建议都很棒).
my $TIMESTART;
$TIMESTART = "2010/02/18 23:48:37";
$TIMESTART =~ s/\//-/g;
use DateTime;
use DateTime::TimeZone;
use DateTime::Format::MySQL;
my $dt = DateTime::Format::MySQL->parse_datetime($TIMESTART);
my $tz = DateTime::TimeZone->new( name => 'America/Chicago' );
print $tz->offset_for_datetime($dt) . "\n";
Run Code Online (Sandbox Code Playgroud)
它将输出以下行:
2010-02-18T23:48:37
-21600
我需要能够在日期中添加-21600以获得GMT -6的本地时区,但我不知道如何解决这个问题.
我很难理解timeZone该方法中的选项Intl.DateTimeFormat()到底是做什么的。我还找不到这方面的深入资源。任何解释将不胜感激。
背景:我们需要在前端显示后端服务器的时间戳,并且时区偏移存在一些问题。目前,我认为根据本地客户端时间显示正确时间的解决方案如下:
Intl.DateTimeFormat('en-GB', {
hour: 'numeric',
minute: 'numeric',
second: 'numeric',
timeZone: 'GMT'
}).format(timestamp)}
Run Code Online (Sandbox Code Playgroud)
我不完全理解,为什么我需要传递选项 timeZone: 'GMT' 作为“格林威治标准时间”才能在前端获得正确的时间。
我是php的新手.我想编写一个函数,我需要用户以任何日期格式输入日期,包括DST,GMT格式,然后再回到原来输入的格式.请任何机构帮助我.
我正在使用查询从Oracle DB获取一些应用程序收到日期,该日期存储为GMT.现在我必须在检索时将其转换为东部标准/夏令时.我使用以下查询:
select to_char (new_time(application_recv_date,'gmt','est'), 'MON dd, YYYY') from application
Run Code Online (Sandbox Code Playgroud)
它适用于标准时间.但是对于夏令时,我们需要根据时区信息将其转换为'edt'.我不太清楚如何做到这一点.请帮帮我
如何确保我的log4j正在使用的所有时间戳都是GMT?
我尝试了以下内容,但它在时间戳内打印"GMT"
log4j.appender.ConversionPattern=%d{HH\:mm\:ss,SSS}{GMT} %-4r %-5p [%t] %3x - %m%n
Run Code Online (Sandbox Code Playgroud) 我想在GMT中获取机器的当前时间,并使用GWT以自定义格式呈现它:
yyyyMMddHHmmss
Run Code Online (Sandbox Code Playgroud)
我怎么能做到这一点?
我试过这个,但是我没有找到如何在GMT中显示当地时间:
Date date = new Date();
DateTimeFormat dtf = DateTimeFormat.getFormat("yyyyMMddHHmmss");
System.err.println(dtf.format(date).toString());
Run Code Online (Sandbox Code Playgroud)
还要注意,Date.getTimezoneOffset()不推荐使用它,我可以用它从当前日期中减去它并在之后格式化它,但它听起来不是一个好的计划.
我有两个相关的问题.
假设在BST中运行的程序以UTC格式生成当前时间的日期时间值YYYY-MM-DDTHH:MM:SS.SSSZ格式
同时假设伦敦当前时间是2016-06-01 12:33:54
1)如果程序给出的当前时间是2016-06-01T11:33:54.000Z,程序错了吗?
2)如何在YYYY-MM-DDTHH的相应时间格式中记录BST的夏季偏移:MM:SS.SSSZ
我假设YYYY-MM-DDTHH:MM:SS + 0001我是否正确?
我有一个JDBC Date列,如果ai使用getDate只是在2009年10月2日获得' date '部分,但是如果我使用getTimestamp我得到完整的' date ' 2009年10月2日13:56:78:890.这是我想要的.
但是,getTimestamp返回的'date'会忽略'GMT值,假设日期; 2009年10月2日13:56:78:890,我最终获得2009年10月2日15:56:78:890
我的日期在数据库中保存为+ 2GMT日期,但应用程序服务器在GMT上,即落后2小时
怎么还能按照现状,2009年10月2日13:56:78:890
编辑
我在客户端获得了GMT +2上的日期+2