2011. 7. 30. 16:29
Data 바이트 스트림 JAVA이야기2011. 7. 30. 16:29
텍스트 문자를 읽고 쓸 수 있는 것이 유용하기는 하지만 때로는 지정된 타입의 이진 데이터르르 스트림으로 전송해야 할 필요도 있다.
DataInput과 DataOutput 인터페이스는 기본 타입을 스트림으로 전송할 수 있는 메소드를 정의하고 있다.
즉, 바이트 스트림이 어떤 타입인지를 구별하는 일을 해주는 스트림이 DataStream이다.
String은 UTF-8 문자 인코딩의 변경된 형태를 사용하여 읽혀지고 쓰여진다. 이것은 표준 UTF-8과는 다르다.
null바이트는 \u0000은 2바이트 형식으로 인코딩된다. 그래서 인코딩된 문자열은 null바이트를 포함하지 않는다.
writeBytes(String s)
String을 바이트 시퀀스로 쓴다.
\u0000 ~ \u00ff 사이에 값만 사용하여야 한다. 상위 2바이트는 손실됨.
writeChars(String s)
String을 문자 시퀀스로 쓴다. 각 문자는 두 개의 바이트로 쓰여지며 상위바이트가 먼저 쓰여진다.
손실이 안되는듯??
DataInput과 DataOutput 인터페이스는 기본 타입을 스트림으로 전송할 수 있는 메소드를 정의하고 있다.
즉, 바이트 스트림이 어떤 타입인지를 구별하는 일을 해주는 스트림이 DataStream이다.
String은 UTF-8 문자 인코딩의 변경된 형태를 사용하여 읽혀지고 쓰여진다. 이것은 표준 UTF-8과는 다르다.
null바이트는 \u0000은 2바이트 형식으로 인코딩된다. 그래서 인코딩된 문자열은 null바이트를 포함하지 않는다.
writeBytes(String s)
String을 바이트 시퀀스로 쓴다.
\u0000 ~ \u00ff 사이에 값만 사용하여야 한다. 상위 2바이트는 손실됨.
writeChars(String s)
String을 문자 시퀀스로 쓴다. 각 문자는 두 개의 바이트로 쓰여지며 상위바이트가 먼저 쓰여진다.
손실이 안되는듯??
'JAVA이야기' 카테고리의 다른 글
직렬화 가능한 클래스 만들기 (0) | 2011.07.30 |
---|---|
객체 직렬화 (1) | 2011.07.30 |
StreamTokenizer (0) | 2011.07.30 |
PushBackStream (0) | 2011.07.30 |
Piped Stream (0) | 2011.07.29 |