2014-02-27 7 views
2

채널에 연결된 OutputStream 객체에 데이터를 쓰는 방법이 있습니까?이 채널은 데이터를 바이트 버퍼 (바람직하게 직접 바이트 버퍼)로 전달합니다.채널을 사용하여 outputStream에서 bytebuffer로 데이터 전달

타사 함수가 출력을 outputStream에 쓸 수있는 경우가 있습니다. 채널을 사용하여이 데이터를 바이트 버퍼에 쓸 수 있어야합니다.

가능합니까?

이 이후 extends OutputStream 만 구현되는 하나 방법을 필요로 당신이

+0

채널 코드를 게시 할 수 있습니까? – fge

+0

아직 채널이 없습니다. 나는 outputStream에 쓰여진 데이터를 읽고 byteBuffer에 넘겨 줄 수 있도록 하나를 추가 할 계획이다. – Marco

+0

그러면 정말로 ByteBuffer 만 필요하고 채널은 필요하지 않을까? – fge

답변

1

쉽게 클래스를 만들 수 있습니다 감사합니다. 샘플, 테스트되지 않은 코드 :

그런 다음 해당 클래스의 인스턴스를 API에 전달하십시오. ByteBuffer에는 바이트 배열을 작성하는 전용 메소드가 있으므로 다른 write 메소드를 대체하려고 할 수도 있습니다.

+0

답변 해 주셔서 감사합니다. 함수가 각 호출마다 단일 바이트를 쓰는 것으로 보입니다. 어떤 아이디어가이 기능의 효율성을 향상 시키는가? – Marco

+2

음, 코드 다음에 추가 텍스트를 추가했습니다 : _other_'.write()'메소드를 덮어 쓸 수 있습니다 – fge