首頁 > Java > java教程 > java Channel怎麼使用

java Channel怎麼使用

WBOY
發布: 2023-04-19 11:22:02
轉載
2684 人瀏覽過

1、說明

Channel是一個可以透過它讀取和寫入資料的物件。它可以被視為IO中的流。但與流相比,它有一些不同:

Channel是雙向的,可以讀也可以寫,流是單向的。

Channel可以非同步讀寫。

Channel的讀寫必須通過buffer物件。

2、實例

利用通道和非直接緩衝區完成。

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怎麼使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板