1、说明
Channel是一个可以通过它读写数据的对象。它可以被视为IO中的流。但与流相比,它有一些不同:
Channel是双向的,可以读也可以写,流是单向的。
Channel可以异步读写。
Channel的读写必须通过buffer对象。
2、实例
利用通道和非直接缓冲区完成。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | FileInputStream fis= null ;
FileOutputStream fout= null ;
FileChannel channel= null ;
FileChannel outchannel= null ;
try {
fis = new FileInputStream( "sb.jpg" );
fout = new FileOutputStream( "bb.jpg" );
channel = fis.getChannel();
outchannel = fout.getChannel();
ByteBuffer buffer=ByteBuffer.allocate(1024);
while (channel.read(buffer)!=-1)
{
buffer.flip();
outchannel.write(buffer);
buffer.clear();
}
|
以上就是java Channel的介绍,希望对大家有所帮助。更多Java学习指路:Java基础
本教程操作环境:windows7系统、java10版,DELL G3电脑。