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

C++빌더 Q&A
C++Builder Programming Q&A
[67014] Re:idftp 한글 문제로 질문했었는데 진전이 보였으나 아직 부족하여 다시 질문올립니다.
il's [magicfox] 1506 읽음    2012-04-25 18:00
IdFTP1->Host = "127.0.0.1";          //Ftp 서버
   IdFTP1->Port = 21;               //Ftp 포트
   IdFTP1->Username = "test";     // 사용자 계정 ID
   IdFTP1->Password = "test";       // 사용자 계정 Password
   IdFTP1->Connect();

   TStringList *FileList = new TStringList;
   if (IdFTP1->Connected() == true)
   {
          FileList ->Clear();
          IdFTP1->TransferType = ftASCII;
          IdFTP1->ChangeDir("/ftpTest/"); 
          IdFTP1->List(FaultFileList, "*.*", false);
         
          for (int Count = 0; Count < FileList ->Count; Count++)
         {
    Memo1->Lines->Add( FileList ->Strings[Count]);
         }
    }

    Put 작업할때는    IdFTP1->TransferType = ftBinary;


신효철 님이 쓰신 글 :
: 안녕하세요.
: 초보개발자 인사올립니다.
:
: 얼마전 idftp client를 이용하여 한글 파일을 다운받고자 하였으나
: 잘 안되어 질문했었습니다.
: 그때 도움을 받아 진전이 있었으나 아직 문제가 있어
: 해결하다가 질문하게 되었습니다.
:
: 
: 	IdFTP1->Host = "127.0.0.1";          //Ftp 서버
: 	IdFTP1->Port = 21;               //Ftp 포트
: 	IdFTP1->Username = "test";     // 사용자 계정 ID
: 	IdFTP1->Password = "test";       // 사용자 계정 Password
: 	IdFTP1->TransferType = ftBinary;     // 전송 방식
: 	IdFTP1->Connect();
: 
: 	IdFTP1->IOHandler->DefStringEncoding = TEncoding::GetEncoding(949);
: 
: 	try{
: 		//TStringList * sList = new TStringList;
: 		IdFTP1->ChangeDir("/ftpTest/");         //디렉토리 이동
: 
: 		IdFTP1->List("*", false);         //리스트,출력하고자하는 조건,true:속성포함 False파일명
: 
: 		for(int i=0; i< IdFTP1->ListResult->Count; i++){
: 			Memo1->Lines->Add(IdFTP1->ListResult->Strings[i]);
: 		}
: 	}__finally{
: 		IdFTP1->Disconnect();
: 	}
: 

: 이렇게 작성하여 테스트 하고자 하였으나 형변환이 안된다는 에러가 떨어졌습니다.
: [BCC32 Error] Unit2.cpp(33): E2034 Cannot convert 'TEncoding *' to 'TIdEncoding'
: DefStringEncoding 이 TidEncoding 이라 형변환이 안된다고 나오는데요.
: 그래서 강제 형변환을 하면
:
: 	IdFTP1->IOHandler->DefStringEncoding = TIdEncoding(TEncoding::GetEncoding(949));
: 

: 한글은 표시 되지만 오류를 뱉어냅니다.
: First chance exception at $76F1B9BC. Exception class EAccessViolation with message 'Access violation at address 5002CBC6 in module 'rtl120.bpl'. Read of address 00000000'. Process Project2.exe (8620)
:
: 형변환을 강제로 해서 오류가 나는데.. 이걸 잡을 길이 안보여 도움을 구하고자 질문하게 되었습니다.
:
: TIdEncoding은 IdGlobal.hpp파일의
: enum TIdEncoding { enDefault, en7Bit, enUTF8, en8Bit }; 이라고 되어있고요.
:
: TEncoding은 SysUtils.hpp 파일의
: static TEncoding* __fastcall GetEncoding(int CodePage); 라고 선언되어 있습니다.
:
: 이걸 보고 뭘 어찌 해야할지 막혀서 선배님들의 도움을 구합니다.

+ -

관련 글 리스트
66934 idftp 한글 문제로 질문했었는데 진전이 보였으나 아직 부족하여 다시 질문올립니다. 신효철 1892 2012/04/17
67014     Re:idftp 한글 문제로 질문했었는데 진전이 보였으나 아직 부족하여 다시 질문올립니다. il's 1506 2012/04/25
67032         Re:Re:idftp 한글 문제로 질문했었는데 진전이 보였으나 아직 부족하여 다시 질문올립니다. 신효철 1745 2012/04/26
67033             Re:Re:Re:idftp 한글 문제로 질문했었는데 진전이 보였으나 아직 부족하여 다시 질문올립니다. il's 2126 2012/04/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.