datetime - 为什么是 "error: invalid escape sequence?"

标签 datetime embedded-linux glib vala

根据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)”。

最佳答案

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

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

您可以通过执行以下操作来解决此问题:

var timestamp = now.format ("%F.%H:%M:%S");

关于datetime - 为什么是 "error: invalid escape sequence?",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12161560/

相关文章:

sms - Gammu:在接收退出状态 1 时运行

c - 是否可以使用 GArray 作为 GHashTable 中的值?

c# - 如何从日期时间中提取时间

php - 像在 PHP 中一样在 Python 中获取格式化的日期时间

python - 如何使用 Datetime 和 Python 打印每分钟

linux - Linux 上的 mpc/mpd : how to play local wav file

c - Linux下可以设置本地时间的定时器吗?

python - PyGObject GLib.MainLoop() 和异常

python - Gtk 3,python,appindicator,禁用标签附近的图标

python - 修复 SQL 中的日期格式