NIO学习(十一):Java NIO的FileChannel的简单使用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/outsanding/article/details/102736992
背景
  1. java.io包下的FileInputStream和FileOutputStream持有java.nio.channels包下 的FileChannle引用,并提供getChannle方法。

简单使用
  1. 准备两个文件,一个是input.txt,一个是output.txt。
  2. input.txt中的内容是Hello FileChannel.
  3. output.txt中的内容是空的。
  4. 测试代码:
 public static void main(String[] args) throws  Exception{
        FileInputStream inputStream = new FileInputStream("input.txt");
        FileOutputStream outputStream = new FileOutputStream("output.txt");

        FileChannel inputChannel = inputStream.getChannel();
        FileChannel  outputChannel = outputStream.getChannel();

        ByteBuffer buffer = ByteBuffer.allocateDirect(1024);

        while (true) {
            buffer.clear();
            int read = inputChannel.read(buffer);
            if (-1 == read) {
                break;
            }

            buffer.flip();

            outputChannel.write(buffer);
        }
        inputChannel.close();
        outputChannel.close();
    }
  1. 测试结果
    在这里插入图片描述

小结
  1. FileChannle的一个简单应用。

猜你喜欢

转载自blog.csdn.net/outsanding/article/details/102736992
今日推荐