如何在Erlang中转换日期格式?

如何在Erlang中转换日期格式?,erlang,date-formatting,Erlang,Date Formatting,我有一个函数(名为test),它返回一个日期 我给你举一个这种回报的例子:“2012年6月1日” 现在我想把这个日期用这个月/年的形式表示出来 所以“2012年6月1日”应该变成“2012年6月” 因为我想用这个日期发短信 send(To,Date) -> Message =io_lib_format("pr%EAt %E0 payer le ~s",[Date]), Url = io_lib:format("http://192.168.1.8/sendsms?tel=~s&am

我有一个函数(名为test),它返回一个日期

我给你举一个这种回报的例子:“2012年6月1日”

现在我想把这个日期用这个月/年的形式表示出来

所以“2012年6月1日”应该变成“2012年6月”

因为我想用这个日期发短信

send(To,Date) ->
Message =io_lib_format("pr%EAt %E0 payer le ~s",[Date]),
    Url = io_lib:format("http://192.168.1.8/sendsms?tel=~s&text=~s", [To, Message]),
     http:request(lists:flatten(Url), sms).
正如我所说的那样,函数测试返回一个日期,例如此表单“2012年6月1日”

a我应该将此表单转换为另一个表单月/年(根据我的示例2012年6月)

我想我应该开发一个函数,该函数的参数是表单中的日期(日-月-年),结果是表单中的日期是月/年

注意,我给您提供了相同的日期转换示例:2012年1月2日、2012年2月1日、2012年3月1日、2012年4月2日、2012年5月1日、2012年6月1日

正如我所说,函数test返回这种日期(在test的代码中,我执行http请求以返回这种日期日月年(是php脚本的返回


谢谢,但是当我使用ec_date:parse进行测试时,出现了以下错误
**异常错误:未定义函数ec_date:parse/1

注意,我使用的是erlang版本13

Erlang R13B03 (erts-5.7.4) [source] [rq:1] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V5.7.4  (abort with ^G)

string:split/2
string:to_lower/1
和如下函数的组合:

month("jan") -> 1;
...
month("dec") -> 12.

应该可以。也可以搜索github,因为可能已经有了针对您的格式的日期解析模块…通过测试。

string:split/2
string:to\u lower/1
和如下函数组成:

month("jan") -> 1;
...
month("dec") -> 12.
应该可以。也可以搜索github,因为可能已经有了针对您格式的日期解析模块…通过测试。

查看,这是一个分支。(两者都非常有效,但我个人使用ec_日期变体)/

它们都可以用于以下目的:解析和格式化日期

> OrigDate = "01-Jun-2012",
> ParsedDate = ec_date:parse(OrigDate),
> FinalDate = ec_date:format("m/Y",ParsedDate).
"06/2012"
查看,这是一个分支。(两者都完全有效,但我个人使用ec_日期变体)/

它们都可以用于以下目的:解析和格式化日期

> OrigDate = "01-Jun-2012",
> ParsedDate = ec_date:parse(OrigDate),
> FinalDate = ec_date:format("m/Y",ParsedDate).
"06/2012"

为了使用ec_日期模块,您需要将文件添加为钢筋依赖项。或者只需将ec_date.erl从链接存储库复制到您自己项目的源代码。为了使用ec_日期模块,您需要将文件添加为钢筋依赖项。或者只需将ec_date.erl从链接存储库复制到您自己项目的源代码.