java channel文件写入

package file;

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

/**
 * @Author lyr
 * @create 2020/2/27 19:43
 */
public class Main {
    public static void main(String[] args)  {
        String msg = "abcdef";

        ByteBuffer buf = ByteBuffer.allocate(msg.length());

        buf.put(msg.getBytes());
        buf.flip();
        FileOutputStream fos = null;
        try {
            fos = new FileOutputStream("F:\\算法\\数据结构\\数据结构\\testMain\\src\\main\\java\\datafile.txt");
            FileChannel fileChannel = fos.getChannel();
            fileChannel.write(buf);

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if(fos!=null) {
                    fos.close();
                }

            } catch (IOException e) {
                e.printStackTrace();
            }
        }


    }
}

要点: 使用 flip 把写模式改为 读模式

发布了151 篇原创文章 · 获赞 7 · 访问量 7497

猜你喜欢

转载自blog.csdn.net/qq_43923045/article/details/104547118