Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[10966] [질문]데이터내용을 텍스트화일로 만들때...
이승근 [lsg0918] 1443 읽음    2006-10-09 11:14
아래에 문장이 예전에 직접 프린터로 출력하는 문을 구성했던 내용입니다...
이번에 데이터를 텍스트화일로 전환해야 하는데 이 구성문을 응용해 해보려하는데 한가지 질문이 있습니다...
필드간의 구분을 tab으로 해야합니다...
즉 텍스트화일을 만들고 바로 엑셀에서 불러올수 있어야 하거든요...
물론 아예 엑셀파일로 만들면 간단하지 싶지만 엑셀은 단지 제대로 만들어졌는지 확인용이고 실제로
텍스트화일을 만들어 디스크에 보관해 외부로 보내주어야 합니다...
엑셀로 먼저 만들고 그곳에서 텍스트로 만들어봄이 어떻냐고 하시는 분들이 간혹 계시던데 사용자가 이중일을
해야하는 문제가 있어서 막바로 텍스트화일을 만들어 주었으면 하네요...
어떻게 하면 되는지 또 아래 문장보다 더 효과적으로 전환할 수 있는 방법이 있는지 좀 알려주십시요...

procedure Tjunpyo2F.SetPrint;
var PrinterF : Textfile;
    m_msg : string;
    m_row : Integer;
begin
  AssignFile(PrinterF,'LPT1');
  ReWrite(PrinterF);

  with main_0.work1 do
       begin
         Close;
         SQL.Clear;
         SQL.Add('Select * from ' + mfilename);
         SQL.Add('Where prtsort >= :a1 ');
         SQL.Add(' and  prtsort <= :a2 ');
         SQL.Add('Order By bno');
         Parambyname('a1').AsFloat := CEdit91.Value ;
         Parambyname('a2').AsFloat := CEdit92.Value + 0.5;
         Open;
         First;
       end;
  while not main_0.work1.Eof do
        begin
          m_msg := LeftStr(main_0.work1.FieldByName('sdt').AsString + '                    ',13);
          m_msg := m_msg + '   ' + RightStr('        ' + main_0.work1.FieldByName('bno').AsString,4);
          m_msg := m_msg + '  '  + RightStr('        ' + main_0.work1.FieldByName('sno').AsString,4);
          m_msg := m_msg + ' '   + RightStr('        ' + Formatfloat('0.0',main_0.work1.FieldByName('ton').AsFloat),4);
          m_msg := m_msg + ' '   + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('g1').AsFloat),6);
          m_msg := m_msg + '  '  + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('g2').AsFloat),6);
          m_msg := m_msg + '  '  + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('g3').AsFloat),6);
          m_msg := m_msg + '  '  + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('g4').AsFloat),6);
          m_msg := m_msg + '  '  + RightStr('        ' + Formatfloat('0.0',main_0.work1.FieldByName('f').AsFloat),7);
          m_msg := m_msg + '  '  + RightStr('        ' + Formatfloat('0.0',main_0.work1.FieldByName('d').AsFloat),7);
          m_msg := m_msg + '  '  + RightStr('        ' + Formatfloat('0.0',main_0.work1.FieldByName('ap').AsFloat),7);
          m_msg := m_msg + '   ' + RightStr('        ' + Formatfloat('0.0',main_0.work1.FieldByName('total').AsFloat),8);
          m_msg := m_msg + '   ' + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('dtemp').AsFloat),6);
          m_msg := m_msg + '   ' + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('htemp').AsFloat),6);
          m_msg := m_msg + '   ' + RightStr('        ' + Formatfloat('0',main_0.work1.FieldByName('atemp').AsFloat),4);
          Writeln(PrinterF,m_msg);
                 :
                 :

          main_0.work1.Next;
        end;
  CloseFile(PrinterF);
end;

+ -

관련 글 리스트
10966 [질문]데이터내용을 텍스트화일로 만들때... 이승근 1443 2006/10/09
10970     Re:[질문]데이터내용을 텍스트화일로 만들때... 박지훈.임프 2105 2006/10/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.