Java IO操作 流(Stream)、文件(File)
1.写入文件内容
File f = new File("C:/Users/Administrator/eclipse-workspace/test/src/test/cc.txt"); // 构建FileOutputStream对象,文件不存在会自动创建 FileOutputStream fop = new FileOutputStream(f); // 构建OutputStreamWrite 对象,参数可指定编码方式,默认为操作系统的默认编码,windows上是gbk OutputStreamWriter writer = new OutputStreamWriter(fop, "UTF-8"); // 写入信息到缓存区 writer.append("中文输入"); writer.append("\r\n"); writer.append("English"); // 关闭写入流,同事把缓存区写入文件, writer.close(); // 关闭输出流,释放系统资源 fop.close();
2.读取文件内容
// 构建FileInputStream对象 FileInputStream fip = new FileInputStream(f); // 构建InputStreamReader对象,编码与写入相同 InputStreamReader reader = new InputStreamReader(fip, "UTF-8"); StringBuffer sb = new StringBuffer(); while(reader.ready()) { // 转成Char加到StringBuffer中 sb.append((char)reader.read()); } System.out.println(sb.toString()); reader.close(); fip.close();
1)mkdir() 方法创建文件夹,成功true 失败 false 失败表明File对象指定的路径已经存在,或者由于整个路径还不存在,该文件夹不能被创建。
2)mkdirs() 创建一个文件夹和它所有的父文件夹
String dirnameString = "C:/Users/Administrator/Desktop/测试文件/演示文件/test2"; File f1 = new File(dirnameString); // boolean dir = f1.mkdir(); boolean dir = f1.mkdirs(); System.out.println("创建文件夹结果:"+ dir);
4.删除目录或者文件
1) File 对象并且是一个目录,那么调用 isDirectory() 方法会返回 true。
2) list() 获取它包含的文件和文件夹的列表。
//删除目录或文件 String dirnameString1 = "C:/Users/Administrator/Desktop/测试文件/"; File f2 = new File(dirnameString1); deleteFolder(f2); public static void deleteFolder(File f) { File files[] = f.listFiles(); // 获取目录下的所有列表 if(files != null) { for (File file : files) { if(file.isDirectory()) { deleteFolder(file); }else { file.delete(); } } } f.delete(); }