나는 아래에 사용하는 코드로 변환바이트 문자열:
System.out.println("string " + Byte.toString((byte)0x63));
왜 그것을 인쇄"string99". 수정하는 방법하게 인쇄"string c"?
System.out.println(new String(new byte[]{ (byte)0x63 }, "US-ASCII"));
참고 특히 변환하는 것 바이트는 문자열항상포함한 인코딩이 있습니다. 를 지정하지 않는 경우,그것을 당신이'될 것 플랫폼을 사용하여 기본 인코딩을 의미하는 코드를 끊을 수 있을 때 다른 환경에서 실행.
문자열 ctor 은 이에 적합한 변환:
System.out.println("string " + new String(new byte[] {0x63}));
사용 char 대신 바이트:
System.out.println("string " + (char)0x63);
는 경우 또는 당신이 원하는 유니코드 청교도를 사용하여 코드:
System.out.println("string " + new String(new int[]{ 0x63 }, 0, 1));
과 같은 경우 old skool US-ASCII"모든 바이트는 문자"아이디:
System.out.println("string " + new String(new byte[]{ (byte)0x63 }, StandardCharsets.US_ASCII));
를 사용하지 않는문자열(byte[])생성자를 추천서 다른 답변,그것에 의존합을 기본 문자셋을 포함한다. 상황 발생할 수 있는0x63실제로 아't 문자c.
문자열(byte[])
0x63
당신이 사용할 수 있printf:
printf
System.out.printf("string %c\n", 0x63);
뿐만 아니라 할 수 있습을 만들 문자열과 같은 포맷을 사용하여문자열#형식의:
문자열#형식의
String s = String.format("string %c", 0x63);
당신이 사용할 수 있는
는문자와 동등하 0x63 는'c'그러나 바이트는 동일합니다 99
System.out.println("byte "+(char)0x63);
당신을 생성하는 새로운 문자열의 바이트 배열입니다. 첫 번째 요소에찬가지로 해당해야0x63. 를 추가하려는 경우 어떤 이상의 문자들찬가지로 해당더 이상 그들을 추가하여 다음의 지수입니다.
찬가지로 해당
byte[] byteArray = new byte[1]; byteArray[0] = 0x63; try { System.out.println("string " + new String(byteArray, "US-ASCII")); } catch (UnsupportedEncodingException e) { // TODO: Handle exception. e.printStackTrace(); }
참고 인코딩을 지정하는 것이 결국 던지는UnsupportedEncodingException고 처리해야 합는니다.
UnsupportedEncodingException
경's 싱글바이트,그냥 주는바이트는char고 그것을 밖으로 작동이 잘 될 즉 줄char엔티티에 해당하는 코드포인트 값의 주어진 바이트입니다. 하지 않을 경우,사용자 문자열의`생성자를 언급했습니다.
바이트
char
char ch = (char)0x63; System.out.println(ch);
String str = "0x63"; int temp = Integer.parseInt(str.substring(2, 4), 16); char c = (char)temp; System.out.print(c);
이 버전:
public String convertBytestoString(InputStream inputStream) { int bytes; byte[] buffer = new byte[1024]; bytes = inputStream.read(buffer); String stringData = new String(buffer,0,bytes); return stringData; }
참고 특히 변환하는 것 바이트는 문자열항상포함한 인코딩이 있습니다. 를 지정하지 않는 경우,그것을 당신이'될 것 플랫폼을 사용하여 기본 인코딩을 의미하는 코드를 끊을 수 있을 때 다른 환경에서 실행.
문자열 ctor 은 이에 적합한 변환:
사용 char 대신 바이트:
는 경우 또는 당신이 원하는 유니코드 청교도를 사용하여 코드:
과 같은 경우 old skool US-ASCII"모든 바이트는 문자"아이디:
를 사용하지 않는
문자열(byte[])
생성자를 추천서 다른 답변,그것에 의존합을 기본 문자셋을 포함한다. 상황 발생할 수 있는0x63
실제로 아't 문자c.당신이 사용할 수 있
printf
:뿐만 아니라 할 수 있습을 만들 문자열과 같은 포맷을 사용하여
문자열#형식의
:당신이 사용할 수 있는
는문자와 동등하 0x63 는'c'그러나 바이트는 동일합니다 99
당신을 생성하는 새로운 문자열의 바이트 배열입니다. 첫 번째 요소에
찬가지로 해당
해야0x63
. 를 추가하려는 경우 어떤 이상의 문자들찬가지로 해당
더 이상 그들을 추가하여 다음의 지수입니다.참고 인코딩을 지정하는 것이 결국 던지는
UnsupportedEncodingException
고 처리해야 합는니다.경's 싱글바이트,그냥 주는
바이트
는char
고 그것을 밖으로 작동이 잘 될 즉 줄char
엔티티에 해당하는 코드포인트 값의 주어진 바이트입니다. 하지 않을 경우,사용자 문자열의`생성자를 언급했습니다.이 버전: