|
형사 님이 쓰신 글 :
: 또 질문 만 드리네요 ...에구
:
: 소켓 통신으로 들어온
:
: 수신되는 데이터를 바이트 별로 배열에 넣어 사용하고 싶은대요...
:
: 1번째 바이트는 헤더 이고.
:
: 수신데이터 크기는 2번째 바이트에서 전달 되고 3번째 바이트 부터가 데이터 들인데요...
:
: 이게 수신 데이트 크기도 유동적이고 ... 우선 바이트 별로 배열에 넣는 방법을 찾을 수가 없네요 ㅜ.ㅜ
:
: 도움말을 보면서 하고는 있는데 ... 에구 ....
:
: 도움부탁 드립니다 꾸벅...
어떤 컴포넌트를 사용하시는지 잘 모르겠지만
데이타가 수신되었다는 이벤트는 있을것이구요.
그 이벤트에서 몇바이트가 수신되었는지 인자로 넘어올 것이구요
(아니면 얻어낼수도 있을것이구요)
그럼 2바이트 이상이 수신되었을때
두번째 바이트를 읽고 그만큼의 메모리를 할당한 다음
그만큼이 찰때까지 계속 읽어들이면 되지 않겠습니까?
(너무 장황하게 설명을 드린듯 ㅡ,.ㅡ)
우선 어떤 컴포넌트를 어떻게 쓰고 계시다는 말을 안남기셔서
답변도 이렇게바께 드릴수가 없네요.
아니면 한바이트가 수신 데이타 크기라고 하시니.
맥시멈 256바이트라는 얘기인데(순수하게 바이트수를 뜻한다면)
그냥 char Buffer[256];
이렇게 해놓고 어디까지가 유효한 바이트인지를 나타내는
unsigned char pos=0;
해서 읽어들인만큼 pos도 늘려주고,Buffer에 채워나가면서
목표치만큼 pos가 되면 그때 완성해서 처리하고 해도 되겠군요.
아뭏튼 좀더 자세한 정보가 필요하답니다 ^^ 그럼 좋은 하루 되세요~
|