Java 프로젝트를위한 Python의 struct 모듈과 비슷한 것이 필요합니다. 나는 바이트 배열에 정수 (그리고 아마도 float과 double을 pack)하고 싶다. 또한 엔디안을 선택하고 다른 언어로 코드를 실행하는 일부 하드웨어에이 데이터를 보내야하므로 일반적으로 이것이 어떻게 수행되는지 완전히 제어 할 수 있습니다.byte []에 데이터 패킹
여기에서답변
: Convert 4 bytes to int, 당신은 INT의 각 바이트를 가지고 배열에 넣을 수있는 int var에 들어 java.nio.ByteBuffer
를 사용할 수 있습니다. 이와 같이 :
int info = 123456789;
byte [] data = new byte[100];
data[0] = (byte) ((info>>24) & 0xff);
data[1] = (byte) ((info>>16) & 0xff);
data[2] = (byte) ((info>>8) & 0xff);
data[3] = (byte) ((info) & 0xff);
int out = 0;
out = ((data[0]&0xff)<<24) | ((data[1]&0xff)<<16) | ((data[2]&0xff)<<8) | data[3]&0xff);
System.out.println("info " + info);
System.out.println("out " + out);
float 또는 double의 경우에는 이와 같이 직접 적용 할 수 없습니다. var를 int로 변환해야합니다. 방법은 Float.floatToRawIntBits() 또는 Double.doubleToRawLongBits()입니다.
['floatToRawIntBits()'] (http://docs.oracle.com/javase/6/docs/api/java/lang/Float. html # floatToRawIntBits % 28float % 29) 또는 ['doubleToRawLongBits()'] (http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html#doubleToRawLongBits%28double%29) 대신 "1000000과 같은 상수 곱하기"로 바보짓을하는 것 ... – glglgl
@glglgl 감사합니다. floatToRawIntBits()를 사용하면 정말 좋습니다. 나는 나의 대답을 업그레이드 할 것이다. – Derzu
- 1. byte []를 byte [,,]에 어떻게 복사합니까?
- 2. ByteBuffer에서 byte []에 도달하면 byte []에 쓰지 않습니다.
- 3. ImageOutputStream을 byte []에 변환
- 4. 비트 패킹 알고리즘 반전
- 5. 압축/패킹
- 6. NSMutableData를 사용하는 Objective-C 패킹 데이터?
- 7. as3을 사용하여 이진 데이터 패킹/압축 풀기
- 8. NoClassDefFoundError : CommonsMultipartFile에서 byte []에 파일 매핑하기
- 9. Objective-C Java byte []에 해당합니다.
- 10. InputStream에서 byte []에 읽는 것은 IndexOutOfBoundsException을 던졌습니다.
- 11. 16 진수 원형 패킹 대 사각형 동그라미 패킹
- 12. 함수를 언 패킹
- 13. 3d 빈 패킹 알고리즘
- 14. 고정 사각형이있는 사각형 패킹
- 15. EAR 패킹 자동화
- 16. .NET 패킹 컨트롤?
- 17. 다각형 패킹 2D
- 18. C의 비트 패킹
- 19. 자바 스크립트 패킹 문제
- 20. 클래스 패킹 및 정렬
- 21. 파일을 ELF 실행 파일로 패킹
- 22. 데이터를 송수신하는 방법 Byte Byte By
- 23. 안드로이드에서 int/byte/string 데이터 형식 저장하기
- 24. iPhone의 Objective C에서 Byte 데이터 유형
- 25. 파일을 만들지 않고 activity에 byte [] 데이터 보내기
- 26. 버퍼에 정수 C 패킹 RFC 4506
- 27. EntityFramework에서 (FluorineFX) ByteArray 형식을 byte []에 매핑하는 방법
- 28. 크기가 다른 데이터를 부호없는 int 목록으로 패킹
- 29. 변환 배열 <Byte>이^데이터 * 데이터 - C++/CLR
- 30. ASP.NET 체크 박스 Byte 데이터 유형에 대한 데이터 바인딩
아마도 다음과 같이 될 수 있습니다. http://docs.oracle.com/javase/1.5.0/docs/api/java/nio/ByteBuffer.html? – mowwwalker
아마도 파이썬을 사용할 수 있을까요? 아마 아니 겠지. 미안해. – Keith
마치 Walkerneo와 똑같습니다. 그 질문을 읽는 누군가를 위해 대답에 어쩌면 살점을 넣고 싶습니다. 그래서 나는 그것을 받아 들인 대답으로 확인해 볼 수 있습니까? –