当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java FileInputStream getChannel()用法及代码示例


getChannel() 方法是 Java.io.FileInputStream 类的一部分。此方法将返回与文件输入流关联的唯一 FileChannel 对象。

  • 从 Java.io.FileInputStream 实例的 getChannel() 方法获得的通道将“打开以供读取”。
  • getChannel() 将返回与 “this” FileInputStream 实例关联的 FileChannel 对象。
  • 每当我们从该流中读取字节时,通道位置都会发生变化。
  • 每当频道的位置改变时,流的文件位置也会改变。
  • 从文件中读取的字节数将决定返回通道的初始位置。

用法:

public FileChannel getChannel()

参数:getChannel() 方法没有参数。

返回类型:getChannel() 方法将返回一个唯一的 FileChannel 对象。



如何调用 getChannel() 方法?

第 1 步:首先,我们必须创建一个 Java.io.FileInputStream 类的实例

FileInputStream  fileInputStream =new FileInputStream("tmp.txt");

第 2 步:要获取与此 fileInputStream 关​​联的唯一 FileChannel 对象,我们将调用 getChannel() 方法

FileChannel fileChannel = fileInputStream.getChannel();

下面的程序将说明 getChannel() 方法的使用。

例:程序获取 FileChannel 对象,然后打印通道文件的大小

Java


// Java Program to demonstrate the working
// of the FileChannel object and then to
// print the size of the channel's file
import java.io.*;
// import FileChannel
import java.nio.channels.FileChannel;
class GFG {
    public static void main(String[] args)
    {
        try {
            // create instance of FileInputStream class
            // user should change name of the file
            FileInputStream fileInputStream
                = new FileInputStream(
                    "C://geeksforgeeks//tmp.txt");
            // if the specified file does not exist
            if (fileInputStream == null) {
                System.out.println(
                    "Cannot find the specified file");
                return;
            }
            // to get the unique object of FileChannel for
            // this specified fileInputStream
            FileChannel fileChannel
                = fileInputStream.getChannel();
            // print the current size of the channel's file
            System.out.println(
                "Current Size of the file is:"
                + fileChannel.size());
        }
        catch (Exception exception) {
            System.out.println(exception.getMessage());
        }
    }
}

输出:

Current size of the file is 48

tmp.txt

Note: The programs might not run in an online IDE. Please use an offline IDE and change the Name of the file




相关用法


注:本文由纯净天空筛选整理自harshsethi2000大神的英文原创作品 FileInputStream getChannel() Method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。