readfile.java

来自「实例精华」· Java 代码 · 共 40 行

JAVA
40
字号
package BUFFER;

import java.io.*;
import java.nio.*;
import java.nio.channels.*;
import java.nio.charset.*;

public class ReadFile
{
        public static void main(String[] args) throws IOException
        {
                FileInputStream fis = new FileInputStream("e:/helin.txt");
             FileOutputStream fos = new FileOutputStream("e:/helinhelin.txt");
                //建立文件通道
                FileChannel channel = fis.getChannel();
                FileChannel chanee2 = fos.getChannel();
                //建立一个ByteBuffer
                ByteBuffer buff = ByteBuffer.allocate(1024);
                //将文件内容通过通道读入缓冲区
                channel.read(buff);
                //调用flip()
                buff.flip();
                //设置编码
                Charset charset = Charset.forName("GBK");
                CharsetDecoder decoder = charset.newDecoder();

                //按照指定的编码将ByteBuffer封装成CharBuffer对象
                CharBuffer cbuff = decoder.decode(buff);
                //将CharBuffer的内容打印出来
                System.out.println(cbuff.toString());

                Charset cs = Charset.forName("ISO-8859-1");
                CharsetEncoder ce = cs.newEncoder();
                ByteBuffer cb = ce.encode(cbuff);
                chanee2.write(cb);


        }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?