Hadoop/HBase 작업을 작성하고 있습니다. Java String
을 바이트 배열로 변환해야했습니다. Java의 String.getBytes()
과 Hadoop의 Bytes.toBytes()
사이에 차이점이 있습니까?String.getBytes()와 Bytes.toBytes (문자열 데이터)의 차이점
17
A
답변
21
its documentation Bytes.toBytes()
에 따르면이 매개 변수는 UTF-8을 사용하여 byte[]
으로 변환됩니다.
String.getBytes()
(without arguments)은 플랫폼 기본 인코딩을 사용하여 String
을 byte[]
으로 변환합니다. 인코딩은 OS 및 사용자 설정에 따라 다를 수 있습니다. 그 방법의 사용은 일반적으로 피해야한다.
String.getBytes(String)
(또는 the Charset
variant) ~ 을 사용하여 인코딩을 지정할 수 있습니다.
8
Javadoc의 읽기,이 같은 일이 될 수 UTF-8
사용하여 byte[]
반환)하는 String.getBytes()는 기본 인코딩 및 Bytes.toBytes을 (사용 byte[]
을 반환 표시하지만,하지 않을 수도 있습니다 .
뭔가를 알고 싶다면 Javadoc을 읽는 것이 항상 유용합니다. ;)