IO流_NIO的介绍和JDK7下NIO的一个案例

NIO其实就是新IO的意思。
JDK4出现NIO。新IO和传统的IO有相同的目的,都是用于进行输入输出的,但新IO使用了不同的方式来处理输入输出,采用内存映射文件的方式,将文件或者文件的一段区域映射到内存中,就可以像访问内存一样的来访问文件了,这种方式效率比旧IO要高很多,但是目前好多地方我们看到的还是旧IO的引用,所以我们仍以旧IO为主,知道NIO即可。

package cn.itcast_09;

import java.io.IOException;
import java.util.ArrayList;

/*
 * nio包在JDK4出现,提高了IO流操作效率。但是目前还不是大范围的使用。
 * 可以了解。
 * 
 * JDK7之后的nio:
 * Path:路径。
 * Paths:有一个静态方法返回一个路径。
 * 		public static Path get(URL uri)
 * Files:提供了静态方法供我们使用。
 * 		public static long copy(Path source,OutputStream out):复制文件
 * 		public static Path write(Path path,Iterable<? extends CharSequence> lines,Charset cs,OpenObtion... options):把集合的数据写到文件
 */
public class NIODemo {
	public static void main(String[] args) throws IOException {
		// Files.copy(Paths.get("ByteArrayStreamDemo.java"), "Copy.java");

		ArrayList<String> array = new ArrayList<String>();
		array.add("hello");
		array.add("world");
		array.add("java");
		//把array内容写到array.txt文件中,编码格式是GBK
		Files.write(Paths.get("array.txt"), array, Charset.forName("GBK"));
	}
}