當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。