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
[29696] 자세하게 다시 올립니다~~
young [] 1360 읽음    2004-05-12 13:45
네..다시 자세하게 말씀드릴게여..
음..그러니깐여..
채팅 프로그램인데 파일 전송 기능에서
4kb씩 읽어서 전송을 하는데여...

    char fileDataBuf[4096] = {0};

    iFileLength = FileSeek(iFileHandle,0,2);

    FileSeek(iFileHandle,0,0);

    iBytesRead = FileRead(iFileHandle, fileDataBuf, 4096);

    send(m_Socket, fileDataBuf, strlen(fileDataBuf), 0);

FileRead 는 파일을 읽을때 바이너리 모드로 읽는 옵션이 없더라구여..
그래서 워드 파일 같은 경우 그냥 읽어서 상대편에 전송을 하면 제대로 전송이 안되고 깨지고 그래서
위에서 읽어 들인 데이터를 바이너리로 변환을 해서 전송을 하려고 하거든여..

    iBytesRead = FileRead(iFileHandle, fileDataBuf, 4096);
   
    <fileDataBuf를 바이너리로 변환 후>
   
    //전송
    send(m_Socket, fileDataBuf, strlen(fileDataBuf), 0);

이런식으로여...
그래서 바이너리로 변환이 필요한테 어떻게 하는지 잘 모르겠어여..
아무리 찾아봐도 보이지 않네여...

근데 이렇게 하면 워드 파일 같은 경우 제대로 전송이 되나여?
FileRead에서 바이너리 파일을 어떻게 읽고 쓰죠?




금목암 님이 쓰신 글 :
: 파일을 만약 unsigned char나 char로 읽어들이셨으면 해당 버퍼에 문자의 hex값이
: 있습니다 문제는  intel hex파일이면 해석해야하고 그냥이면 해석할 필요없습니다
:
: 보낼때 한자씩 띄어서 보내면 되죠 ..
: 좀더 자세히 원하는걸 써보세요 그래야 방법도 나오죠

+ -

관련 글 리스트
29689 스트링을 바이너리로 변환하는 방법 알려주세여~ young 2434 2004/05/11
34992     Re:스트링을 바이너리로 변환하는 방법 알려주세여~ 꿈꾸는빛.영준 1533 2004/05/12
29695     Re:스트링을 바이너리로 변환하는 방법 알려주세여~ 금목암 1557 2004/05/12
29696         자세하게 다시 올립니다~~ young 1360 2004/05/12
29710             Re:자세하게 다시 올립니다~~ 금목암 1314 2004/05/13
29706             Re:자세하게 다시 올립니다~~ 방태윤 1310 2004/05/13
29728                 두분다 답변 감사드립니다..^^(냉무) young 977 2004/05/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.