Q&A

  • 폼을 텍스트 파일로 읽어 오려면 어떻게 해야 하는지요??
폼을 view as text 로 보면 폼과 콤포넌트들의 속성이 쭈~우~욱 나오는데요



그 것을 text 파일로 읽어 볼수 없는지요?



dfm 파일을 그냥 메모장으로 열어 봤더니...눈깔이 핑핑 돌던데 그렇게 말고 view as text로 볼 때처럼 나오게 할려면



목적은 거기에 있는 속성 값중에서 caption, hint등 한글이 들어가는 것을 찾아서 한글을 캡쳐할려구 그래요.



고수님들의 답변 부탁합니다.

1  COMMENTS
  • Profile
    최석기 2001.02.24 21:23
    클마스 wrote:

    > 폼을 view as text 로 보면 폼과 콤포넌트들의 속성이 쭈~우~욱 나오는데요

    >

    > 그 것을 text 파일로 읽어 볼수 없는지요?

    >

    > dfm 파일을 그냥 메모장으로 열어 봤더니...눈깔이 핑핑 돌던데 그렇게 말고 view as text로 볼 때처럼 나오게 할려면

    >

    > 목적은 거기에 있는 속성 값중에서 caption, hint등 한글이 들어가는 것을 찾아서 한글을 캡쳐할려구 그래요.

    >

    > 고수님들의 답변 부탁합니다.



    DFM -> TXT로 변환하기





    (* DfmToTxt 1.0

    **

    ** Author: Jacob Dybala (m3Rlin). Public Domain

    **

    ** Created : January 2 2000

    ** Modified: April 12 2000

    *)

    program DfmToTxt;



    {$apptype console} { Generate console application }

    {$debuginfo off}

    {$localsymbols off}

    {$optimizations on}

    {$rangechecks off}



    uses

    Classes, SysUtils;



    var

    sNewFileName : string;

    strInput, strOutput: TStream;

    begin

    { Initialize streams }

    strInput := nil;

    strOutput := nil;



    { Get commandline parameters }

    if (ParamCount > 2) or (ParamCount = 0) then begin

    WriteLn('DfmToTxt 1.0');

    WriteLn('By Jacob Dybala (m3Rlin). Public Domain.');

    WriteLn;

    WriteLn('Usage: DfmToTxt ');

    Exit;

    end else if not FileExists(ParamStr(1)) then bgein

    WriteLn(Format('Error: %s can not be found.', [sNewFileName]));

    Exit;

    end if ExtractFileExt(ParamStr(1) <> '.dfm') then begin

    WriteLn('Error: Input file must be a .dfm (Delphi Form) file');

    Exit;

    end;



    if ParamCount = 1 then begin

    sNewFileName := ParamStr(1);

    sNewFileName := ChangeFileExt(sNewFileName, '.txt');

    end else begin

    sNewFileName := ParamStr(2);

    if FileExists(sNewFileName) then begin

    WriteLn(Format('Error: A file named %s already exists.', [sNewFileName]));

    Exit;

    end;

    end;



    { Main code }

    try

    try

    strInput := TFileStream.Create(ParamStr(1), fmOpenRead);

    strOutput := TFileStream.Create(sNewFileName, fmCreate);

    except

    Write('Error: Failed creating ');

    WriteLn(sNewFileName);

    Exit;

    end;

    ObjectResourceToText(strInput, strOutput);

    finally

    strInput.Free;

    strOutput.Free;

    end;

    end;