在Ruby 1.9程序中,我想格式化当前时间Thu 1:51 PM.我应该在一天中的某个小时使用什么格式的代码(1在本例中)?
Time.now.strftime '%a %I:%M %p' #=> "Thu 01:51 PM"
Time.now.strftime '%a %l:%M %p' #=> "Thu 1:51 PM"
Run Code Online (Sandbox Code Playgroud)
%I有一个前导零(01).%l有一个领先的空间( 1).我没有在strftime文档中看到小时的任何其他格式代码.我无法使用,.lstrip因为空间位于字符串的中间.我可以使用.gsub(/ +/, " "),但我想知道是否有一个更少的hacky,更简单的方式.
我需要自定义日期格式.在ruby中,我会使用strftime或字符串格式化的时间来完成此任务.
now = Time.new
now.strftime '%a, %d of %b' #=> "Sat, 27 of Jun"
Run Code Online (Sandbox Code Playgroud)
javascript使用strftime还是等效的?如何在javascript中获得类似的效果?
每次我使用:
time.strftime("%z")
Run Code Online (Sandbox Code Playgroud)
我明白了:
Eastern Daylight Time
Run Code Online (Sandbox Code Playgroud)
但是,我希望UTC偏移量为+ HHMM或-HHMM.我甚至尝试过:
time.strftime("%Z")
Run Code Online (Sandbox Code Playgroud)
仍然产生:
Eastern Daylight Time
Run Code Online (Sandbox Code Playgroud)
我已经阅读了几个与strftime()相关的其他帖子,%z似乎总是以正确的+ HHMM或-HHMM格式返回UTC偏移量.如何让strftime()以+ HHMM或-HHMM格式输出python 3.3?
编辑:我正在运行Windows 7
为什么C++标准支持功能strftime()但不支持strptime()? strftime()可以将时间更改为字符串,但是没有可以将字符串更改回时间的函数.
在Posix strptime()上可以使用类似C的函数,使用它需要处理混合C和C++代码的潜在问题.
我在CRAN上有一个名为UNF的包,它创建了一个哈希data.frame(用于数据引用).我在包中与日期时间格式相关的一些测试(我正在使用testthat).它们在当前版本的R(3.1.3)上正常工作,但是一旦我提交给CRAN,其中一个测试就失败了"r-oldrel-windows"(3.0.3).
我已经跟踪了以下代码的差异,这两个版本的R产生了不同的结果.这是正确的输出(来自3.1.3):
x = strptime("2014-08-22T16:51:05Z", "%FT%H:%M:%OSZ", tz="UTC")
x
# [1] "2014-08-22 16:51:05 UTC"
strftime(x, "%F")
# [1] "2014-08-22"
Run Code Online (Sandbox Code Playgroud)
这是3.0.3的输出:
x = strptime("2014-08-22T16:51:05Z", "%FT%H:%M:%OSZ", tz="UTC")
x
# [1] "2014-08-22 16:51:05 UTC"
strftime(x, "%F")
# [1] ""
Run Code Online (Sandbox Code Playgroud)
如您所见,输出strftime是一个空字符串而不是ISO 8601格式化日期.知道这两个版本之间的变化是什么吗?我怎么能纠正这个?或者,我怎样才能避免CRAN上的测试失败?
API返回一个时间戳作为UTC时间戳的UNIX时间戳,我想知道这个时间戳是否超过x几秒钟.正如预期的那样,这os.time() - x > timestamp在UTC中运行良好,但在其他时区爆炸.
不幸的是我找不到一个好方法来解决这个问题.
os.date有用地具有!前缀(例如os.date("!%H:%M:%S"))以返回UTC的时间,但似乎尽管文档声明它支持所有strftime选项,但这不支持该%s选项.我听说有人提到这是由类似问题的Lua编译时选项引起的,但由于解释器是由用户提供的,因此无法更改这些选项.
我有以下内容:
@comment.created_at.strftime("%I:%M %p %b %d")
Run Code Online (Sandbox Code Playgroud)
哪个输出:12月19日上午10:32
我想输出一个小写字母,如:12月19日上午10点32分
有关如何使用ruby/rails进行操作的任何想法?
谢谢
如何将以下Objective-C代码转换为Swift代码?
#define MAX_SIZE 11
char buffer[MAX_SIZE];
time_t time = [[NSDate date] timeIntervalSince1970];
strftime(buffer, MAX_SIZE, "%-l:%M\u2008%p", localtime(&time));
NSString *dateString = [NSString stringWithUTF8String:buffer];
NSLog(@"dateString: %@", dateString); // dateString: 11:56?PM
Run Code Online (Sandbox Code Playgroud)
我正在格式化date.
使用时strftime @tzformat = "%F,%l:00 %p":
我想在逗号和小时之间只有一个空格.但是%l没有为10,11和12提供空间,而如果我把“ %l”我得到两个空格用于0-9(一个来自填充,另一个来自我添加的空间).
月有无填充选项.我小时候看不到同样的情况.
我错过了什么?
我得到了一个可爱的 盒子,应该显示西班牙语字符.(即:ñ,á等).我已经确定我的meta http-equiv设置为utf-8:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Run Code Online (Sandbox Code Playgroud)
我还确保页面标题也设置为utf-8:
header('Content-type: text/html; charset=UTF-8');
Run Code Online (Sandbox Code Playgroud)
到目前为止,这是我的代码的开始阶段:
<?php
setlocale(LC_ALL, 'es_MX');
$datetime = strtotime($event['datetime']);
$date = date("M j, Y", $datetime);
$day = strftime("%A", $datetime);
$time = date("g:i", $datetime);
?>
<a href="/<?= $event['request'] ?>.html"><?= $day ?> <?= $time ?></a>
Run Code Online (Sandbox Code Playgroud)
上面的代码在where语句中.我已经读过在数据库中切换排序也可能是一个因素,但我已经将它设置为UTF-8 General ci.另外,该列中唯一的东西是DateTime,无论如何都是数字,无论如何都无法进行整理.
结果:s bado8:00
一如既往地非常感谢任何帮助.