어떻게 목록에서 문자열을 erlang으로 변환 할 수 있습니까? Erlang 목록에서 문자열을 가져 오는 방법
내 목록보기 :[{{19,59,51}, {2011,1,14}, "FFF"}, {{19,59,47}, {2011,1 , 14}, "ASDfff"}]
감사합니다.
어떻게 목록에서 문자열을 erlang으로 변환 할 수 있습니까? Erlang 목록에서 문자열을 가져 오는 방법
내 목록보기 :[{{19,59,51}, {2011,1,14}, "FFF"}, {{19,59,47}, {2011,1 , 14}, "ASDfff"}]
감사합니다.
아주 간단한 일이
List = [{{19,59,51},{2011,1,14},"fff"},
{{19,59,47},{2011,1,14},"ASDfff"}],
IOList = io_lib:format("~w", [List]),
FlatList = lists:flatten(IOList),
수 있지만 것이 당신이 더 나은 방식으로 포맷 할 수 있습니다 타임 스탬프,
같은 것으로 나타나는FormattedIOLists =
[ io_lib:format("~4..0B-~2..0B-~2..0B ~2..0B:~2..0B:~2..0B ~s",
[YYYY,M,D, HH,MM,SS, Comment])
|| {{HH,MM,SS},{YYYY,M,D},Comment} <- List ],
FormattedFlatLists =
[ lists:flatten(io_lib:format("~4..0B-~2..0B-~2..0B ~2..0B:~2..0B:~2..0B ~s",
[YYYY,M,D, HH,MM,SS, Comment]))
|| {{HH,MM,SS},{YYYY,M,D},Comment} <- List ],
귀하의 청구서에 더 잘 어울릴 수 있습니다. 쉘에 신속하고 더러운 대화 형 출력을 위해
, 목록 (iolists)의 재귀 목록을 구축 대부분의 경우 그 iolists 평탄화보다 할 수있는 더 나은 것입니다9> [ io:format("~4..0B-~2..0B-~2..0B ~2..0B:~2..0B:~2..0B ~s~n", [YYYY,M,D, HH,MM,SS, Comment]) || {{HH,MM,SS},{YYYY,M,D},Comment} <- List ].
2011-01-14 19:59:51 fff
2011-01-14 19:59:47 ASDfff
[ok,ok]
10> lists:foreach(fun({{HH,MM,SS},{YYYY,M,D},Comment}) -> io:format("~4..0B-~2..0B-~2..0B ~2..0B:~2..0B:~2..0B ~s~n", [YYYY,M,D, HH,MM,SS, Comment]) end, List).
2011-01-14 19:59:51 fff
2011-01-14 19:59:47 ASDfff
11>
참고. 대부분의 출력 함수는 출력 데이터에 대해 직접 iolists를 받아들이므로 실제 출력이 나오기 전에리스트를 평탄화함으로써 아무 것도 얻지 못합니다.
어쩌면 단지 :
io_lib:format("~w", [[{{19,59,51},{2011,1,14},"fff"},{{19,59,47},{2011,1,14},"ASDfff"}]]).
그런 목록의 예를 제공해 줄 수 있습니까? –
그리고 문자열이 어떤 모양으로 보이나요? – chris