그래서 Android String은 내부적으로 UTF-16으로 저장됩니다. 내가 잘 모르는 것은 내부적으로 사용되는 Big Endian 또는 Little Endian인지 여부입니다.안드로이드에서 UTF-16 바이트 배열을 얻는 데 가장 효율적인 getBytes는 어느 것입니까
getBytes ("UTF")를 호출하면 BOM이있는 BE 바이트 배열이 반환됩니다. 이것은 문자열이 내부적으로 저장되는 방식이라는 것을 의미합니까?
UTF-16 문자의 바이트 버퍼로 호출해야하는 C API가 있습니다. 필요한 경우 엔디안을 관리하기 위해 C API를 조정할 수 있습니다.
피할 수없는 것은 endianess를 관리하기 위해 필요하지 않다면 Java 레벨에서 배열 복사를하는 것입니다. 그 작동하도록 문자열 String 내부적으로 빅 또는 리틀 엔디안 저장되어 있는지 알아야합니다. String이 내부적으로 Little Endian에 저장되어 있다면, getBytes ("UTF16-LE")를 호출하고 Little Endian을 기본 코드로 바로 전달하는 편이 더 좋습니다.
Android가 후드에서 사용하는 것을 알고 누구보다 getBytes (...)가 가장 효율적입니까?
와우, 빠른 답장을 보내 주셔서 감사합니다. – user1816142