2014-01-14 5 views
0

String 데이터를 보내고 (바이트로 변환하지 않고) 네트워크 (브로드 캐스트)의 모든 시스템 (둘 다 안드로이드 장치)으로 보내야합니다. . 이 코드는 어디에서나 바이트 변환을 사용하는 모든 코드에서 검색합니다. 그리고 나는 StreamWritter 문자열 데이터를 보내기 위해 StreamWritter을 사용하고 있지만 방송 방법을 지원하지 않습니다. 제발 도와주세요.C에서 바이트로 변환하지 않고 udp를 사용하여 소켓 데이터를 보내는 방법 #

+1

데이터를 바이트로 전송 한 다음 데이터를 수신하면 문자열을 바이트로 재구성해야합니다. – DaveDev

+0

하지만 여기에 문제는 수신기가 안드로이드 애플 리케이션과 .. 이미 자사의 애플 리케이션을 빌드합니다. 그것은 단지 문자열 값을 받아 들일 것입니다. –

+0

리시버 소스 코드가 있습니까? – Mateusz

답변

0

Android 앱도 전송 계층 (UDP)의 바이트 만 수신합니다. 이러한 앱이 이미 존재하기 때문에 원하는 인코딩 종류 (ASCII, UTF-8 ...)를 알고 필요한 인코딩으로 문자열을 보내야합니다.

Android 측에서 이러한 바이트는 인코딩과 함께 응용 프로그램에서 사용되는 문자열로 변환됩니다.

응용 프로그램이 UDP 위에 특정 프로토콜을 사용하는 경우이 프로토콜에 대한 C#의 기존 구현을 검색 할 수 있습니다.

2

수 없습니다. 소켓은 문자열을 처리하지 않으므로 짧은 이야기이므로 문자열을 다른 쪽 문자열로 변환해야합니다.

+0

모든 방법을 사용할 수 있지만 최종 결과는 문자열을 브로드 캐스트로 보내야합니다. –

0

수 없습니다. 그것은 불가능. 안드로이드 수신기는 스트림에서 바이트를 문자열로 변환하는 메소드를 갖습니다. 그것이 어떻게 이루어지는 지 알아보고, 인코딩 할 때 프로세스를 뒤집습니다.

일반적으로 이것은 문자열의 크기를 알려주는 int가 붙은 byte [] 표현으로 변환 된 문자열입니다.

관련 문제