对于程序员来说,文件操作是必不可少的一项技能。Java文件操作提供了多种API可以用于对文件进行读取、写入、复制和删除等操作。本文将从多个方面详解Java文件操作,帮助读者掌握应用。
一、创建文件
1、创建文件对象
// 创建文件对象 File file = new File("D:/test.txt"); // 如果文件不存在,则创建新文件 if (!file.exists()) { boolean result = file.createNewFile(); System.out.println("文件创建" + (result ? "成功" : "失败")); }
2、创建目录
// 创建文件夹对象 File dir = new File("D:/testDir"); // 如果文件夹不存在,则创建文件夹 if (!dir.exists()) { boolean result = dir.mkdirs(); System.out.println("目录创建" + (result ? "成功" : "失败")); }
二、写入文件
1、使用FileWriter写入文本文件。
// 创建文件对象 File file = new File("D:/test.txt"); // 创建写入流 FileWriter fw = new FileWriter(file, true); // 写入数据 String text = "Hello World!"; fw.write(text); // 关闭流 fw.close();
2、使用BufferedWriter写入文本文件,可以提高写入效率。
// 创建文件对象 File file = new File("D:/test.txt"); // 创建写入流 FileWriter fw = new FileWriter(file, true); BufferedWriter bw = new BufferedWriter(fw); // 写入数据 String text = "Hello World!"; bw.write(text); // 刷新缓存区 bw.flush(); // 关闭流 bw.close(); fw.close();
三、读取文件
1、使用FileReader读取文本文件。
// 创建文件对象 File file = new File("D:/test.txt"); // 创建读取流 FileReader fr = new FileReader(file); // 读取数据 char[] buf = new char[1024]; int len = 0; while ((len = fr.read(buf)) != -1) { System.out.println(new String(buf, 0, len)); } // 关闭流 fr.close();
2、使用BufferedReader读取文本文件,可以提高读取效率。
// 创建文件对象 File file = new File("D:/test.txt"); // 创建读取流 FileReader fr = new FileReader(file); BufferedReader br = new BufferedReader(fr); // 读取数据 String line = null; while ((line = br.readLine()) != null) { System.out.println(line); } // 关闭流 br.close(); fr.close();
四、复制文件
将一个文件复制到另一个文件夹。
// 创建文件对象 File source = new File("D:/source.txt"); File dest = new File("D:/dest.txt"); // 创建读取流和写入流 FileInputStream fis = new FileInputStream(source); FileOutputStream fos = new FileOutputStream(dest); // 复制文件 byte[] buf = new byte[1024]; int len = 0; while ((len = fis.read(buf)) != -1) { fos.write(buf, 0, len); } // 关闭流 fos.close(); fis.close();
五、删除文件
删除一个文件或文件夹。
// 创建文件对象 File file = new File("D:/test.txt"); // 删除文件 if (file.exists()) { boolean result = file.delete(); System.out.println("文件删除" + (result ? "成功" : "失败")); }
文件操作是Java编程中常用的技能之一,掌握文件操作API对于Java程序员来说至关重要。本文从多个方面阐述了Java文件操作,希望能够帮助读者提高编程效率。