package player.kent.chen.temp.learnnio;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
public class PlayFileChannel {
public static void main(String[] args) throws IOException {
playOutput();
playInput();
}
private static void playOutput() throws FileNotFoundException, IOException {
FileChannel fc = new FileOutputStream("/home/kent/temp/data.txt").getChannel();
ByteBuffer buff = ByteBuffer.wrap("All the data".getBytes());
fc.write(buff);
fc.close();
}
private static void playInput() throws FileNotFoundException, IOException {
FileChannel fc = new FileInputStream("/home/kent/temp/data.txt").getChannel();
ByteBuffer buff = ByteBuffer.allocate(1024);
fc.read(buff); //把文件内容读出来,写到buffer中
buff.flip(); //让buffer进入“可读”状态
while (buff.hasRemaining()) {
System.out.println((char) buff.get());
}
}
}