【发布时间】:2012-08-28 14:30:26
【问题描述】:
根据valadoc
var now = new DateTime.now(new TimeZone.local());
var timestamp = now.format("\%F.\%T");
应将时间戳设置为“2012-08-28.09:51:06”。为什么在“F”和“T”上出现“错误:无效的转义序列”? valadoc 中的其他格式会导致相同的错误,而 now.to_string() 实际上是 "2012-08-28T09:51:06+0000"
编辑:也许嵌入式 linux 目标缺少一些东西?
编辑:测试代码here 在使用 glib 2.26.1 的项目中打印“(null)”。
【问题讨论】:
-
只是一个半随机的猜测,但你试过
"\\%F.\\%T"或"%F.%T"吗? -
@NullUserException:是的,我做到了。两者都清除了构建错误,但在运行时返回“”而不是时间戳字符串。
-
仅供参考,有一个
new DateTime.now_local()。 -
@nemequ:正如我所说,尝试过并没有导致构建错误但不返回格式化的日期字符串,只有“”。
-
当我说“作品”时,我是认真的。我得到一个格式正确的字符串而不是空字符串。 fpaste.org/BQZ0 的测试程序产生类似于“2012-08-30.10:27:20”的内容。 AFAICT g_date_time_format 实现不依赖于 libc 中的任何特殊内容,因此结果应该是一致的。也许您正在使用带有错误的旧版本 glib?
标签: datetime embedded-linux glib vala