Q&A

  • 대상파일에서 지정문자를 찾고....난 후에... ㅡ,.ㅡ
ㅡ,.ㅡ 도와주세요! 무척이나 힘드네여! 쉬울거 같은데...

config.ini 파일안에서 지정문자를 찾고 그 문자의 뒤에 나오는 값을 변수값에...

COMPANY_NAME = 회사명
FTP_NAME     = url_address
USER_NAME    = admin
PASSWORD     = admin

위의 네줄은 파일에 들어있는 내용입니다.
결론은 COMPANY_NAME 를 변수로 사용... 회사명은 변수의 값으로...

어떻게 구분하고 변수에 값을 넣을수가 있을까여~~~!
파일 오픈에서 로딩까지가 이해도 잘 안되고... 예제가 있을까여? sample같은거여!
님들 도와주세요! ^^; 즐건 하루보네시구여!
6  COMMENTS
  • Profile
    석주현 2004.12.10 06:16
    정확하세 제가 내용을 모르겠지만
    저런 경우 같으면 보통 TStringList를 쓰시는게 편합니다.

    소스 그냥 뿌립니다.
    ===================
    procedure TForm1.Button1Click(Sender: TObject);
    var
      tmpStr : TStringList;
    begin
      tmpStr := TStringList.Create;

      tmpStr.Add('학교이름=11111');
      tmpStr.Add('회사이름=몰라정말로');

      Caption := tmpStr.Values['회사이름'];

      tmpStr.SaveToFile('aa.txt');
      tmpStr.Free;
    end;

    =============================================
    간단한 예입니다.

    일단 스트링 리스트를 만들고
    음 파일로 읽을수도있고요... 아니면 저렇게 값을 넣어줘도 되구요.
    저장도 가능하고

    Caption := tmpStr.Values[찾을항목]; 이렇게하면 해당 항목
    즉, 왼쪽에 항목에 해당하는 = 이후에 값이 찾아집니다.. ^^

    직접해보시면 아마도 바로 아실 거 같네요.. ^^

    그럼 안녕히..
  • Profile
    한하눌 2004.12.10 00:57

    memo1.lines.loadfromfile('c:\config.ini');
    memo1.lines.values['COMPANY_NAME'] := 'TEST';

    이렇게 해보시는건 어떨까요?


  • Profile
    권태훈 2004.12.10 00:53


    if pos("company_name", lowercase(one_line)) > -1 then
    beign
      result := trim(copy(one_line, pos("=", one_line) + 1 , 999999999999));
    end;

    (기억나는대로 쓰므로 철자나 함수의 순서는 틀릴수 있습니다)

    PS : 99999999 = 적당히 큰 숫자.


  • Profile
    김현철 2004.12.10 02:02
    [re] 한하눌님...권태훈님... 고맙습니다.!
           근데 철자를 고쳐서 해봤는데 안되는데여! ㅡ.,ㅡ

  • Profile
    권태훈 2004.12.10 02:15
    해당 부분을 올려주세요


  • Profile
    김현철 2004.12.10 02:26
    procedure TMainForm.ConnectButtonClick(Sender: TObject);
    var
       i : integer;
       FTP_FILE_PATH  : Array[1..4] of String;
    begin
      for i := 1 to 3 do begin
        if pos('COMPANY_NAME', lowercase('config.ini')) > -1 then begin
           FTP_FILE_PATH[i] := trim(copy('config.ini', pos('=', 'config.ini') + 1 , 999999999999));
        end;
        if pos('FTP_NAME', lowercase('config.ini')) > -1 then begin
         FTP_FILE_PATH[i] := trim(copy('config.ini', pos('=', 'config.ini') + 1 , 999999999999));
        end;
        if pos('USER_NAME', lowercase('config.ini')) > -1 then begin
           FTP_FILE_PATH[i] := trim(copy('config.ini', pos('=', 'config.ini') + 1 , 999999999999));
        end;
        if pos('PASSWORD', lowercase('config.ini')) > -1 then begin
         FTP_FILE_PATH[i] := trim(copy('config.ini', pos('=', 'config.ini') + 1 , 999999999999));
        end;
      end;
    end;
    -------------------------------------------------------------