文件基础知识:
文件就是保存数据的地方,例如:word文档,txt文件,Excel文件等都是文件,它可以保存一张图片,也可以保存视频,声音等…
文件流:
文件在程序中是以流的形式来操作的。
流:数据在数据源(文件)和程序(内存)之间经历的路径
输入流:数据从数据源(文件)到程序(内存)的路径
输出流:数据从程序(内存)到数据源(文件)的路径
常见的文件操作:
createNewFile //创建新文件
创建文件对象相关构造器和方法:
new File(String pathname) //根据路径构建一个File对象 new File(File parent,String child) //根据父目录文件+子路径构建 new File(String parent,String child) //根据父目录+子路径构建
举例:
import java.io.File; import java.io.IOException; public class File_java { public static void main(String[]args) throws IOException { //new file----只是在内存中创建了文件 //方式1 File file=new File("e:\\","hello_java.txt"); //方式2 File file=new File("e:/hello_java1.txt"); //方式3 File file=new File("e:\\"); File file1=new File(file,"hello_java3.txt"); if(file.createNewFile()){//在磁盘真实的创建了一个文件 System.out.println("创建成功~"); } else{ System.out.println("创建失败~"); } } }
获取文件相关信息:
常见的方法有:
getName() //获取文件的名字 getAbsolutePath() //获取文件的绝对路径 getParent() //获取文件的父目录 length() //获取文件的长度 exists() //判断文件是否存在 isFile() //判断是否为文件 isDirectory() //判断是否是目录
举例:
import java.io.File; import java.io.IOException; public class File_java { public static void main(String[]args) { File file=new File("e:\\"); File file1=new File(file,"hello_java3.txt"); System.out.println("文件名字为:"+file1.getName()); System.out.println("文件的绝对路径:"+file1.getAbsolutePath()); System.out.println("文件的父目录:"+file1.getParent()); System.out.println("文件的长度:"+file1.length()); System.out.println("文件是否存在:"+file1.exists()); System.out.println("是否是文件:"+file1.isFile()); System.out.println("是否是目录:"+file1.isDirectory()); } }
输出:
文件名字为:hello_java3.txt 文件的绝对路径:e:\hello_java3.txt 文件的父目录:e:\ 文件的长度:10 文件是否存在:true 是否是文件:true 是否是目录:false
目录的操作和文件的删除:
mkdir创建一级目录,mkdirs创建多级目录,delete删除空目录或文件
创建多级目录:
import java.io.File; import java.io.IOException; public class File_java { public static void main(String[] args) { File file1 = new File("e:\\demo\\a\\b\\c"); if (file1.exists()) { System.out.println(file1 + "存在.."); } else { if (file1.mkdirs()) { System.out.println(file1 + "创建成功.."); } else { System.out.println(file1 + "创建失败..."); } } } }
创建单级目录:
import java.io.File; import java.io.IOException; public class File_java { public static void main(String[] args) { File file1 = new File("e:\\demo1"); if (file1.exists()) { System.out.println(file1 + "存在.."); } else { if (file1.mkdir()) { System.out.println(file1 + "创建成功.."); } else { System.out.println(file1 + "创建失败..."); } } } }
delete删除空目录或文件:
这里的空目录是指单级目录,如果该目录还包含子目录,那么该方法无法将其删除
举例:
import java.io.File; import java.io.IOException; public class File_java { public static void main(String[] args) { File file1 = new File("e:\\demo1"); if (file1.exists()) { if (file1.delete()) { System.out.println(file1 + "删除成功.."); } else { System.out.println(file1 + "删除失败..."); } } else { System.out.println(file1 + "不存在.."); } } }