hubToRms.Sv = ByteBuffer.wrap(recv).getDouble();
String str = new String(recv, 0, recv.length); // str ->
Log.d(TAG1, "결과 -> " + str);
C서버와 안드로이드 클라이언트로 더블형 데이터를 주고받고 있습니다.
자바에서는 hubToRms.Sv = ByteBuffer.wrap(recv).getDouble(); 로 값을 받고 있는데 값이 1.0102658E-28 처럼
지수형? 으로 나오네요.. 그리고 str을 출력해보면 바이너리값이 출력되서 그런지 ◆◆◈ 이런식으로 나오네요..
getDouble로 하면 매번 같은값이 나와서.. str의 값을 바이트단위로 잘라서 double형으로 변환해줘야 할것같습니다.
C에서 LITTLE_ENDIAN으로 값을 보내줘서 안드로이드에서도 값을 받을때 LITTLE_ENDIAN으로 변환해서 뿌려줘야할것 같은데.. ENDIAN으로 변환하는 방법을 모르겠네요,,
아니면 LITTLE_ENDIAN형 바이트단위로 잘라서 더블형으로 바로 표현해줄 수 있는지..
도움부탁드립니다.