日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

通道Channel-使用NIO 写入数据

發布時間:2024/4/13 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 通道Channel-使用NIO 写入数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用NIO 寫入數據與讀取數據的過程類似,同樣數據不是直接寫入通道,而是寫入緩沖區,可以分為下面三個步驟:

1. 從FileInputStream 獲取Channel。

2. 創建Buffer。

3. 將數據從Channel 寫入到Buffer 中。

import java.io.*; import java.nio.*; import java.nio.channels.*; public class FileInputDemo {static public void main( String args[] ) throws Exception {FileInputStream fin = new FileInputStream("E://test.txt");// 獲取通道FileChannel fc = fin.getChannel();// 創建緩沖區ByteBuffer buffer = ByteBuffer.allocate(1024);// 讀取數據到緩沖區fc.read(buffer);buffer.flip();while (buffer.remaining() > 0) {byte b = buffer.get();System.out.print(((char)b));}fin.close();} }

下面是一個簡單的使用NIO 向文件中寫入數據的例子:

import java.io.*; import java.nio.*; import java.nio.channels.*; public class FileOutputDemo {static private final byte message[] = { 83, 111, 109, 101, 32,98, 121, 116, 101, 115, 46 };static public void main( String args[] ) throws Exception {FileOutputStream fout = new FileOutputStream( "E://test.txt" );FileChannel fc = fout.getChannel();ByteBuffer buffer = ByteBuffer.allocate( 1024 );for (int i=0; i<message.length; ++i) {buffer.put( message[i] );}buffer.flip();fc.write( buffer );fout.close();} }

?

總結

以上是生活随笔為你收集整理的通道Channel-使用NIO 写入数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。