Método FileInputStream getChannel() en Java con ejemplos

El método getChannel() es parte de la clase Java.io.FileInputStream . Este método devolverá el objeto FileChannel único asociado con el flujo de entrada del archivo. 

  • Un canal obtenido del método getChannel() de la instancia de Java.io.FileInputStream estará «abierto para lectura».
  • getChannel() devolverá el objeto FileChannel asociado con «esta» instancia de FileInputStream.
  • La posición del canal cambiará siempre que leamos bytes de este flujo.
  • Cada vez que se cambia la posición del canal, también se cambiará la posición del archivo de la transmisión.
  • El número de bytes leídos del archivo determinará la posición inicial del canal devuelto.

Sintaxis:

public FileChannel getChannel()

Parámetro: el método getChannel() no tiene parámetros.

Tipo de devolución: el método getChannel() devolverá un objeto FileChannel único.

¿Cómo invocar el método getChannel()?

Paso 1: Primero, tenemos que crear una instancia de la clase Java.io.FileInputStream

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

Paso 2: para obtener el objeto FileChannel único asociado con este fileInputStream, llamaremos al método getChannel()

FileChannel fileChannel = fileInputStream.getChannel();

El siguiente programa ilustrará el uso del método getChannel().

Ejemplo: programa para obtener el objeto FileChannel y luego imprimir el tamaño del archivo del canal

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());
        }
    }
}

Producción:

Current size of the file is 48

tmp.txt

Nota: es posible que los programas no se ejecuten en un IDE en línea. Utilice un IDE sin conexión y cambie el nombre del archivo

Publicación traducida automáticamente

Artículo escrito por harshsethi2000 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *