이진 파일을 소켓으로 받을때 함수.

mudori의 이미지

파일 쓰기 함수가

write 맞는지요?

소켓으로 받을때 함수는

recv 인지 read 인지 readform(?) 인지..

데이터그램 소켓으로 하는것인지 스트림으로 하는것인지 아는것이 무식인지라..

조언좀 부탁드립니다.

일반 파일은 잘 되는데..

rasungboy의 이미지

뭘로 하던 상관없습니다.

recv() 로 받으면 tcp 를 써야겠고 recvfrom 으로 받으면

udp 를 써야겠죠.

tcp 와 udp 의 차이는 이미 알고 계실거라 언급하지는

않겠습니다.

파일전송 프로토콜 하나 구성해서 전송하시면 되겠네요.

버퍼가 가득차서 잠시 wouldblock 나는 경우 적당히 처리해

주고 하면 무난히 하실듯 ^^

mudori의 이미지

http 프로토콜로 바이너리 받는데.. 여러번 나뉘어서 받아지는것 같은데.. 한번만 처리하고 뒤에 오는건 처리 불가네요..

mudori의 이미지

ㅋㅋ

익명 사용자의 이미지

mudori wrote:
http 프로토콜로 바이너리 받는데.. 여러번 나뉘어서 받아지는것 같은데.. 한번만 처리하고 뒤에 오는건 처리 불가네요..

recv(), read()등은 현재 컴퓨터에 도착된 것만 읽어줍니다.
그래서, 모든 데이터가 올때까지, 루프돌면서 recv(), read()해야합니다.
텍스트? 바이너리? 이런거 안따집니다. 다 바이너리입니다.

이런거 고려안하면, 대략 낭감입니다. ㅋㅋ :twisted: