none
dot net micro framework 에서 encoding 변환 RRS feed

  • 질문

  • VB.NET 2010 에서 닷넷 마이크로 프레임워크를 이용하여

    하드웨어 디바이스간 시리얼통신을 하는 프로그램을 개발중입니다.

    데스크탑용 닷넷에서는 encoding 하면 ascii , default(ansi) 및 기타 여러가지 선택할수 있는 옵션이 많은데

    닷넷 마이크로 프레임워크에서는 오로지 UTF8로만 변경이 가능하더군요.

    영문으로의 전송은 이상없는데 한글이 깨져서 전송이 됩니다.

    PC(데스크탑용 닷넷 프레임워크) 에서의 전송은 이상없습니다.

    ------------------------------------------------------------------------------

    정상 동작 코드 ---

    PC (데스크탑용 닷넷 프레임워크) --> 전송 --> LED 디바이스(펌웨어)   // 한글 정상 동작

     Dim st As String
     Dim bt() As Byte
     st = "한글테스트"
     bt = System.Text.Encoding.Default.GetBytes(st) <--- 이부분에서 Encoding.Default로 변환해서 보냅니다.(ANSI 로..)
     SerialPort.Write(bt, 0, bt.Length)

    -------------------------------------------------------------

    비정상 동작 코드

    디바이스 (닷넷 마이크로 프레임워크) --> 전송 --> LED 디바이스(펌웨어)   // 한글 비정상 표시

     Dim st As String
     Dim bt() As Byte
     st = "한글테스트"
     bt = System.Text.Encoding.UTF8.GetBytes(st) <--- 이부분에서 UTF8로만 선택하게 되어 있습니다.(에러 예상 지점)
     SerialPort.Write(bt, 0, bt.Length)

    ------

    마이크로 프레임 워크에서 유니코드 문자열의 ANSI로의 변환 메소드가 없다면

    순수 코딩으로 만 변환이 가능한지요?

    며칠째 검색을 해봐도 방향을 잡을수가 없습니다.

    2014년 4월 10일 목요일 오전 5:15

답변

모든 응답