在Elixir中使用Timex解析日期字符串时出现“无效格式字符串”错误

sat*_*ace 2 elixir

如果我缺少明显的内容,请原谅我,我是Elixir的新手。

我在获取日期解析以与Timex配合使用时遇到了麻烦,因此我决定从其测试套件中复制一行并在iex中运行它,即使这样也无法成功。

下面的解析调用是从https://github.com/bitwalker/timex/blob/master/test/parse_strftime_test.exs复制而来,并通过在Timex模块名称前添加前缀进行了修改。

Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false]

Interactive Elixir (1.2.4) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> use Timex
nil
iex(2)> Timex.parse("20150713 14:01:21.053021", "%Y%m%d %H:%M:%S.%f")
{:error,
 {:format, "Invalid format string, must contain at least one directive."}}
Run Code Online (Sandbox Code Playgroud)

我假设测试套件运行良好,但是作为解决日期解析问题的附带问题,我想学习如何为已安装的依赖项运行测试套件。

Dog*_*ert 5

测试中一样,如果要使用like格式:strftimeTimex.parse/3则需要将其作为第三个参数传递strftime

iex(1)> Timex.parse("20150713 14:01:21.053021", "%Y%m%d %H:%M:%S.%f", :strftime)
{:ok, #<DateTime(2015-07-13T14:01:21Z)>}
Run Code Online (Sandbox Code Playgroud)