2

根据瓦拉多克

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目标缺少一些东西?

编辑:这里的测试代码在这个使用 glib 2.26.1 的项目中打印“(null)”。

4

1 回答 1

2

正如 NullUserException 所提到的,您不应该包含反斜杠——这就是导致无效转义序列错误的原因。

删除反斜杠后它仍然不起作用的原因是 %T 格式说明符直到 2.30 周期才添加。相关的提交是414c8ce532c19fe65deb8dfb80222d0164be5cbe

您可以通过执行以下操作来解决它:

var timestamp = now.format ("%F.%H:%M:%S");
于 2012-08-30T23:12:13.833 回答