2012-08-28 47 views
2

按照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)」。

+0

只是一個半隨機的猜測,但你嘗試過' '或'「%F%T」'? – NullUserException

+0

@NullUserException:是的,我做到了。都清除構建錯誤,但在運行時返回「」而不是時間戳字符串。 – jacknad

+0

只是FYI,有一個'新的DateTime.now_local()'。 – apmasell

回答

2

由於NullUserException提到,你不應該包括反斜槓 - 這是什麼導致無效的轉義序列錯誤。

刪除反斜槓後仍不起作用的原因是%T格式說明符直到2.30週期才被添加。有關承諾是414c8ce532c19fe65deb8dfb80222d0164be5cbe

你可以解決它通過做這樣的事情,而不是:「\\%F \\%T」

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

是的!就是這樣。太感謝了。 – jacknad

相關問題