FileChannel getChannel


描述

所述java.io.FileOutputStream.getChannel()方法返回与这个文件输出流有关的唯一FileChannel对象。

声明

以下是java.io.FileOutputStream.getChannel()方法的声明

public FileChannel getChannel()

参数

NA

返回值

此方法返回与此文件输出流关联的文件通道。

异常

NA

实例

以下示例显示了java.io.FileOutputStream.getChannel()方法的用法。

package com.tutorialspoint;

import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.channels.FileChannel;

public class FileOutputStreamDemo {
   public static void main(String[] args) throws IOException {
      FileOutputStream fos = null;
      FileChannel fc = null;
      long pos;
      byte b[] = {65, 66, 67, 68, 69};

      try {
         // create new file output stream
         fos = new FileOutputStream("C://test.txt");

         // write buffer to the output stream
         fos.write(b);

         // pushes stream content to the underlying file
         fos.flush();

         // returns file channel associated with this stream
         fc = fos.getChannel();

         // returns the number of bytes written
         pos = fc.position();

         // prints
         System.out.print(pos);

      } catch(Exception ex) {
         // if an error occurs
         ex.printStackTrace();
      } finally {

         if(fos!=null)
            fos.close();
         if(fc!=null)
            fc.close();
      }
   }
}

让我们编译并运行上面的程序,这将产生以下结果

Position: 5