2017-04-18 89 views
0

我有和這裏描述的相同的問題:http://www.markhneedham.com/blog/2017/03/06/neo4j-apoc-date-parse-java-lang-illegalargumentexception-illegal-pattern-character-t-java-text-parseexception-unparseable-date-2012-11-12t084615z/如何用neo4j中的apoc以「yyyy-mm-ddTHH:mm:ss」的形式解析日期?

反正有嗎?

總之這呼叫

RETURN apoc.date.parse("2016-01-01T15:54:11", 's','yyyy-MM-dd'T'HH:mm:ss') as value2 

給出了錯誤:

Invalid input 'T': expected whitespace, '.', node labels, '[', "=~", IN, STARTS, ENDS, CONTAINS, IS, '^', '*', '/', '%', '+', '-', '=', "<>", "!=", '<', '>', "<=", ">=", AND, XOR, OR, ',' or ')' (line 1, column 63 (offset: 62)) 

「RETURN apoc.date.parse(」 2016-01-01T15:54:11" , 'S', 'YYYY-MM-dd'T'HH:MM:SS')作爲值2"

此呼叫

RETURN apoc.date.parse("2016-01-01 15:54:11", 's','yyyy-MM-ddTHH:mm:ss') as value2 

給出了錯誤

Failed to invoke function `apoc.date.parse`: Caused by: java.lang.IllegalArgumentException: Illegal pattern character 'T' 

回答

2

的問題是你使用單引號整個字符串,因此你開始引用T,它看起來像你結束字符串,而不是。

爲了避免這種情況,使用字符串本身加雙引號,單引號括起來的T像這樣:

RETURN apoc.date.parse("2016-01-01T15:54:11", 's',"yyyy-MM-dd'T'HH:mm:ss") as value2