2011-05-08 5 views
18

내가 시작할 때 설정 파일을 읽어야하는 erlang으로 하나의 프로그램을 개발하고, 그 다음에 설정 데이터를 데이터베이스로 읽어 들인다. 원래 Ruby 나 C를 사용하여 YAML 파일이나 conf 파일을로드 할 수 있습니다. 내가 알고 싶은, erlang의 세계에서, 거기에 어떤 좋은 방법은 설정 파일을로드 할 수 있습니까? 감사! erlang으로 설정 파일을 분석하는 방법은 무엇입니까?

내가로드하는 데 필요한 YAML 스타일 파일입니다, 당신은 얼랑 용어로 구성 데이터를 저장하는 경우 난 당신이 사용할 수있는 설정 파일

a: 
    a1: 
    a2: 1 
    a3: 2 
b: 
    b1: 
    b2: 3 
    b3: 4 

답변

31

의 스타일을 신경 쓰지 않는 내장 file:consult/1 함수를 구문 분석합니다.

데이터 구조는 사용자가 결정합니다. 원자의 목록으로 키

{a, [{a1, [{a2, 1}, {a3, 2}]}]}. 
{b, [{b1, [{b2, 3}, {b3, 4}]}]}. 

또는 키 - 값 튜플 :

{[a, a1, a2], 1}. 
{[a, a1, a3], 2}. 
{[b, b1, b2], 3}. 
{[b, b1, b4], 4}. 

또는 문자열/charlists 같은 키 :

{"a.a1.a2", 1}. 
{"a.a1.a3", 2}. 
{"b.b1.b2", 3}. 
{"b.b1.b4", 4}. 

또는 예를 들어, proplists을 사용할 수 있습니다 원자를 키로 사용 :

{a.a1.a2, 1}. 
{a.a1.a3, 2}. 
{b.b1.b2, 3}. 
{b.b1.b4, 4}. 

등등. 그것은 귀하의 데이터 및 액세스 방법에 따라 다릅니다.

관련 문제