在整个Java.io包中最重要的就是5个类和3个接口,掌握了这些IO的核心操作那么对于Java中的IO体系也就有了一个初步的认识了。
•节点流:可以直接从数据源或目的地读写数据 •处理流(包装流):不直接连接到数据源或目的地,是其他流进行封装。目的主要是简化操作和提高性能。 节点流和处理流的关系: ①节点流处于io操作的第一线,所有操作必须通过他们进行; ②处理流可以对其他流进行处理(提高效率或操作灵活
•字节流:按照字节读取数据(InputStream、OutputStream) •字符流:按照字符读取数据(Reader、Writer) ,因为文件编码的不同,从而有了对字符进行高效操作的字符流对象。 原理:底层还是基于字节流操作,自动搜寻了指定的码表。
public class FileDemo02 { /** * 构建File对象 * 相对路径与绝对路径 * 1)、存在盘符: 绝对路径 * 2)、不存在盘符:相对路径 ,当前目录 user.dir * @param args */ public static void main(String[] args) { String path =“D:/java300/IO_study01/IO.png”;
//绝对路径 File src = new File(path); System.out.println(src.getAbsolutePath());
//相对路径 System.out.println(System.getProperty(“user.dir”)); src = new File(“IO.png”); System.out.println(src.getAbsolutePath());
//构建一个不存在的文件 src = new File(“aaa/IO2.png”); System.out.println(src.getAbsolutePath()); }
}