getChannel()
方法getChannel()方法在java.io包中可用。
getChannel()方法用于返回与此FileInputStream链接的独特FileChannel对象。
getChannel()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
getChannel()方法在获取频道时不会引发异常。
语法:
public FileChannel getChannel();
参数:
它不接受任何参数。
返回值:
该方法的返回类型为FileChannel,它返回与此流连接的FileChannel。
示例
//Java程序演示示例 //的FileChannelgetChannel()方法 //FileInputStream的 import java.io.*; import java.nio.channels.*; public class GetChannelOfFIS { public static void main(String[] args) throws Exception { FileInputStream fis_stm = null; FileChannel file_ch = null; int count = 0; try { //实例化FileInputStream- fis_stm = new FileInputStream("C:\\includehelp.txt"); while ((count = fis_stm.read()) != -1) { //通过使用read()方法是读取 //来自fis_stm的一个字节 count = fis_stm.read(); //显示相应的字节值 byte b = (byte) count; //显示值b- System.out.println("fis_stm.read(): " + b); } //通过使用getChannel()方法就是返回 //FileChannel与流链接 file_ch = fis_stm.getChannel(); System.out.println("fis_stm.getChannel(): " + file_ch); } catch (Exception ex) { System.out.println(ex.toString()); } finally { //借助此块可以 //释放所有链接的必要资源 //与流 if (fis_stm != null) { fis_stm.close(); if (file_ch != null) { file_ch.close(); } } } } }
输出结果
fis_stm.read(): 4 fis_stm.read(): 97 fis_stm.read(): 97 fis_stm.read(): 8 fis_stm.read(): 111 fis_stm.read(): 108 fis_stm.read(): 33 fis_stm.read(): 33 fis_stm.getChannel(): [email protected]