java 创建删除文件和目录
2016-10-27 17:38
323 查看
创建文件、删除文件、创建目录、删除[b]目录[/b]
该文件是完整的小程序,可以直接使用
========================================================================================
该文件是完整的小程序,可以直接使用
<span style="font-size:18px;">package com.yangjf.service.impl; import java.io.BufferedInputStream; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.util.jar.Attributes; import java.util.jar.JarEntry; import java.util.jar.JarOutputStream; import java.util.jar.Manifest; /* * 向文件中写入数据 * */ public class WriterDataToFile { static String fileUrl = "D:/upload.txt"; public static void setDate(final String conent, String url) { if (url == null || "".equals(url)) { CreateFile(fileUrl); } else { CreateFile(url); } BufferedWriter out = null; try { out = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(fileUrl, true))); out.write(conent + "\r\n"); } catch (Exception e) { e.printStackTrace(); } finally { try { if (out != null) { out.close(); } } catch (IOException e) { e.printStackTrace(); } } } public static boolean CreateFile(String destFileName) { File file = new File(destFileName); if (file.exists()) { // System.out.println("创建单个文件" + destFileName + "失败,目标文件已存在!"); return false; } if (destFileName.endsWith(File.separator)) { System.out.println("创建单个文件" + destFileName + "失败,目标不能是目录!"); return false; } if (!file.getParentFile().exists()) { System.out.println("目标文件所在路径不存在,准备创建。。。"); if (!file.getParentFile().mkdirs()) { System.out.println("创建目录文件所在的目录失败!"); return false; } } // 创建目标文件 try { if (file.createNewFile()) { System.out.println("创建单个文件" + destFileName + "成功!"); return true; } else { System.out.println("创建单个文件" + destFileName + "失败!"); return false; } } catch (IOException e) { e.printStackTrace(); System.out.println("创建单个文件" + destFileName + "失败!"); return false; } } public static boolean createDir(String destDirName) { File dir = new File(destDirName); if (dir.exists()) { System.out.println("创建目录" + destDirName + "失败,目标目录已存在!"); return false; } if (!destDirName.endsWith(File.separator)) destDirName = destDirName + File.separator; // 创建单个目录 if (dir.mkdirs()) { System.out.println("创建目录" + destDirName + "成功!"); return true; } else { System.out.println("创建目录" + destDirName + "失败!"); return false; } } public static String createTempFile(String prefix, String suffix, String dirName) { File tempFile = null; try { if (dirName == null) { // 在默认文件夹下创建临时文件 tempFile = File.createTempFile(prefix, suffix); return tempFile.getCanonicalPath(); } else { File dir = new File(dirName); // 如果临时文件所在目录不存在,首先创建 if (!dir.exists()) { if (!WriterDataToFile.createDir(dirName)) { System.out.println("创建临时文件失败,不能创建临时文件所在目录!"); return null; } } tempFile = File.createTempFile(prefix, suffix, dir); return tempFile.getCanonicalPath(); } } catch (IOException e) { e.printStackTrace(); System.out.println("创建临时文件失败" + e.getMessage()); return null; } } public static boolean deleteDir(File dir) { if(dir==null){ return true; } if (dir.isDirectory()) { String[] children = dir.list(); for (int i = 0; i < children.length; i++) { boolean success = deleteDir(new File(dir, children[i])); if (!success) { return false; } } } // 目录此时为空,可以删除 return dir.delete(); } /** * 删除目录中的.svn目录 * * @param f */ public static void delDotsvn(File f) { File[] files = f.listFiles(); if (files != null) for (File file : files) if (".svn".equals(file.getName())) del(file); else delDotsvn(file); } /** * 删除文件或目录 */ public static void del(File file) { File[] files = file.listFiles(); if (files != null) for (File f : files) del(f); file.delete(); } //生成jar 包 public static void generateJar(String targetPath,String javaClassPath) throws FileNotFoundException, IOException { System.out.println("*** --> 开始生成jar包..."); String targetDirPath = targetPath.substring(0, targetPath.lastIndexOf("/")); File targetDir = new File(targetDirPath); if (!targetDir.exists()) { targetDir.mkdirs(); } Manifest manifest = new Manifest(); manifest.getMainAttributes().put(Attributes.Name.MANIFEST_VERSION, "1.0"); JarOutputStream target = new JarOutputStream(new FileOutputStream(targetPath), manifest); writeClassFile(new File(javaClassPath), target,javaClassPath); target.close(); System.out.println("*** --> jar包生成完毕。"); } private static void writeClassFile(File source, JarOutputStream target,String javaClassPath) throws IOException { BufferedInputStream in = null; try { if (source.isDirectory()) { String name = source.getPath().replace("\\", "/"); if (!name.isEmpty()) { if (!name.endsWith("/")) { name += "/"; } name = name.substring(javaClassPath.length()); JarEntry entry = new JarEntry(name); entry.setTime(source.lastModified()); target.putNextEntry(entry); target.closeEntry(); } for (File nestedFile : source.listFiles()) writeClassFile(nestedFile, target,javaClassPath); return; } String middleName = source.getPath().replace("\\", "/").substring(javaClassPath.length()); JarEntry entry = new JarEntry(middleName); entry.setTime(source.lastModified()); target.putNextEntry(entry); in = new BufferedInputStream(new FileInputStream(source)); byte[] buffer = new byte[1024]; while (true) { int count = in.read(buffer); if (count == -1) break; target.write(buffer, 0, count); } target.closeEntry(); } finally { if (in != null) in.close(); } } public static void main(String[] args) { //WriterDataToFile.CreateFile("E:\\upload\\dk_download\\20160914\\对公_LDPF_201609140049.xlsx"); //临时文件 //WriterDataToFile.deleteDir(new File("F:\\workSpaceTomorrowPower05\\quartz-05\\src\\main\\java\\net\\chrone\\tpsdk\\quartz\\util\\jdzfutil")); } } </span>
========================================================================================
相关文章推荐
- java怎么创建目录(删除/修改/复制目录及文件)代码实例
- JAVA 如何创建\删除\修改\复制目录及文件
- 创建、删除文件或目录java工具类
- JAVA 如何创建/删除/修改/复制目录及文件
- JAVA 如何创建\删除\修改\复制目录及文件
- Java创建删除文件和目录的方法(推荐)
- JAVA 如何创建/删除/修改/复制目录及文件 --【转】
- java中File文件的创建,删除,复制,移动,以及目录文件的删除等等,主要是文件及文件夹的操作
- JAVA 如何创建/删除/修改/复制目录及文件 (转载)
- JAVA 如何创建/删除/修改/复制目录及文件 3in1
- JAVA 如何创建/删除/修改/复制目录及文件
- java单个文件复制,递归删除、复制目录下所有内容,递归创建文件夹,.7z文件解压等
- JAVA 如何创建/删除/修改/复制目录及文件
- JAVA 如何创建/删除/修改/复制目录及文件
- 牛客网Java刷题知识点之File对象常用功能:获取文件名称、获取文件路径、获取文件大小、获取文件修改时间、创建与删除、判断、重命名、查看系统根目录、容量获取、获取某个目录下内容、过滤器
- JAVA 如何创建\删除\修改\复制目录及文件
- JAVA 如何创建/删除/修改/复制目录及文件
- JAVA 如何创建\删除\修改\复制目录及文件
- JAVA unix / Win OS / 文件目录创建、删除 和 目录权限(file permission)
- JAVA 如何创建/删除/修改/复制目录及文件