朱莉娅 - 奇怪的joinpath()行为

时间:2016-12-15 05:38:41

标签: julia

这应该是给定路径的前缀:

date = Date(2016, 6, 3)
const FILEDATE_FORMAT = "YYYYmmdd"
const FILE_PATH_FORMAT = "/YYYY/mm/"

joinpath(
 "path-prefix",
  Dates.format(DateTime(date), FILE_PATH_FORMAT),
  Dates.format(DateTime(date), FILEDATE_FORMAT)
)

预期:"/path-prefix/2016/06/20160603"

实际:"/2016/06/20160603"

这里有什么问题?

1 个答案:

答案 0 :(得分:5)

在Linux上,/是根目录。由于您的FILE_PATH_FORMAT以字符/开头,joinpath将此解释为根目录,并且根据该函数的行为,自路径以来所有内容都被省略已经绝对了。

解决方案是从/中删除前导FILE_PATH_FORMAT

顺便说一下,我需要在我的系统上使用yyyy,而不是YYYY。不确定为什么YYYY适合你...