`
laowood
  • 浏览: 120937 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java移动文件

阅读更多
一:
//文件原地址
File oldFile = new File("c:/test.xls");
//文件新(目标)地址
String newPath = "c:/test/";
//new一个新文件夹
File fnewpath = new File(newPath);
//判断文件夹是否存在
if(!fnewpath.exists())
fnewpath.mkdirs();
//将文件移到新文件里
File fnew = new File(newPath +oldFile.getName());
oldFile.renameTo(fnew);

二:(使用java复制移动文件 )
   /**
      * Moving a File to Another Directory
      * @param srcFile  eg: c:\windows\abc.txt
      * @param destPath eg: c:\temp
      * @return success
      */
     public static boolean move(String srcFile, String destPath){
  // File (or directory) to be moved
  File file = new File(srcFile);
 
  // Destination directory
  File dir = new File(destPath);
 
  // Move file to new directory
  boolean success = file.renameTo(new File(dir, file.getName()));
 
  return success;
     }

三:(java删除 移动文件)
File f=new File("c:\\Autoexec.bat");
f.renameTo("d:\\Autoexec.bat");//移动
f.delete();//删除

import java.io.*;

public class MoveFile {
      public static void main(String[] args)throws IOException{
      File f=new File("d:\\myHomework\\Work");
      File fileList[]=f.listFiles();
      for(int i=0;i<fileList.length ;i++) {
   fileList[i].renameTo(new File("d:\\myHomework\\Backup\\" + fileList[i].getName()));
     }
}

四:java操作文件(创建,删除,复制,剪切)

package OALogic.sql.data;
import java.io.*;

public class FileOperate {
   public FileOperate() {
   }
  
   public static void main(String args[]){
       newFolder("D:/100");

   }

   /**
     * 新建目录
     * @param folderPath String 如 c:/fqf
     * @return boolean
     */
   public static void newFolder(String folderPath) {
       try {
           String filePath = folderPath;
           filePath = filePath.toString();
           java.io.File myFilePath = new java.io.File(filePath);
           if (!myFilePath.exists()) {
               myFilePath.mkdir();
           }
       }
       catch (Exception e) {
           System.out.println("新建目录操作出错");
           e.printStackTrace();
       }
   }

   /**
     * 新建文件
     * @param filePathAndName String 文件路径及名称 如c:/fqf.txt
     * @param fileContent String 文件内容
     * @return boolean
     */
   public static void newFile(String filePathAndName, String fileContent) {

       try {
           String filePath = filePathAndName;
           filePath = filePath.toString();
           File myFilePath = new File(filePath);
           if (!myFilePath.exists()) {
               myFilePath.createNewFile();
           }
           FileWriter resultFile = new FileWriter(myFilePath);
           PrintWriter myFile = new PrintWriter(resultFile);
           String strContent = fileContent;
           myFile.println(strContent);
           resultFile.close();

       }
       catch (Exception e) {
           System.out.println("新建目录操作出错");
           e.printStackTrace();

       }

   }

   /**
     * 删除文件
     * @param filePathAndName String 文件路径及名称 如c:/fqf.txt
     * @param fileContent String
     * @return boolean
     */
   public static void delFile(String filePathAndName) {
       try {
           String filePath = filePathAndName;
           filePath = filePath.toString();
           java.io.File myDelFile = new java.io.File(filePath);
           myDelFile.delete();

       }
       catch (Exception e) {
           System.out.println("删除文件操作出错");
           e.printStackTrace();

       }

   }

   /**
     * 删除文件夹
     * @param filePathAndName String 文件夹路径及名称 如c:/fqf
     * @param fileContent String
     * @return boolean
     */
   public static void delFolder(String folderPath) {
       try {
           delAllFile(folderPath); //删除完里面所有内容
           String filePath = folderPath;
           filePath = filePath.toString();
           java.io.File myFilePath = new java.io.File(filePath);
           myFilePath.delete(); //删除空文件夹

       }
       catch (Exception e) {
           System.out.println("删除文件夹操作出错");
           e.printStackTrace();

       }

   }

   /**
     * 删除文件夹里面的所有文件
     * @param path String 文件夹路径 如 c:/fqf
     */
   public static void delAllFile(String path) {
       File file = new File(path);
       if (!file.exists()) {
           return;
       }
       if (!file.isDirectory()) {
           return;
       }
       String[] tempList = file.list();
       File temp = null;
       for (int i = 0; i < tempList.length; i++) {
           if (path.endsWith(File.separator)) {
               temp = new File(path + tempList[i]);
           }
           else {
               temp = new File(path + File.separator + tempList[i]);
           }
           if (temp.isFile()) {
               temp.delete();
           }
           if (temp.isDirectory()) {
               delAllFile(path+"/"+ tempList[i]);//先删除文件夹里面的文件
               delFolder(path+"/"+ tempList[i]);//再删除空文件夹
           }
       }
   }

   /**
     * 复制单个文件
     * @param oldPath String 原文件路径 如:c:/fqf.txt
     * @param newPath String 复制后路径 如:f:/fqf.txt
     * @return boolean
     */
   public static void copyFile(String oldPath, String newPath) {
       try {
           int bytesum = 0;
           int byteread = 0;
           File oldfile = new File(oldPath);
           if (oldfile.exists()) { //文件存在时
               inputStream inStream = new FileinputStream(oldPath); //读入原文件
               FileOutputStream fs = new FileOutputStream(newPath);
               byte[] buffer = new byte[1444];
               int length;
               while ( (byteread = inStream.read(buffer)) != -1) {
                   bytesum += byteread; //字节数 文件大小
                   System.out.println(bytesum);
                   fs.write(buffer, 0, byteread);
               }
               inStream.close();
           }
       }
       catch (Exception e) {
           System.out.println("复制单个文件操作出错");
           e.printStackTrace();

       }

   }

   /**
     * 复制整个文件夹内容
     * @param oldPath String 原文件路径 如:c:/fqf
     * @param newPath String 复制后路径 如:f:/fqf/ff
     * @return boolean
     */
   public static void copyFolder(String oldPath, String newPath) {

       try {
           (new File(newPath)).mkdirs(); //如果文件夹不存在 则建立新文件夹
           File a=new File(oldPath);
           String[] file=a.list();
           File temp=null;
           for (int i = 0; i < file.length; i++) {
               if(oldPath.endsWith(File.separator)){
                   temp=new File(oldPath+file[i]);
               }
               else{
                   temp=new File(oldPath+File.separator+file[i]);
               }

               if(temp.isFile()){
                   FileinputStream input = new FileinputStream(temp);
                   FileOutputStream output = new FileOutputStream(newPath + "/" +
                           (temp.getName()).toString());
                   byte[] b = new byte[1024 * 5];
                   int len;
                   while ( (len = input.read(b)) != -1) {
                       output.write(b, 0, len);
                   }
                   output.flush();
                   output.close();
                   input.close();
               }
               if(temp.isDirectory()){//如果是子文件夹
                   copyFolder(oldPath+"/"+file[i],newPath+"/"+file[i]);
               }
           }
       }
       catch (Exception e) {
           System.out.println("复制整个文件夹内容操作出错");
           e.printStackTrace();

       }

   }

   /**
     * 移动文件到指定目录
     * @param oldPath String 如:c:/fqf.txt
     * @param newPath String 如:d:/fqf.txt
     */
   public static void moveFile(String oldPath, String newPath) {
       copyFile(oldPath, newPath);
       delFile(oldPath);

   }

   /**
     * 移动文件到指定目录
     * @param oldPath String 如:c:/fqf.txt
     * @param newPath String 如:d:/fqf.txt
     */
   public static void moveFolder(String oldPath, String newPath) {
       copyFolder(oldPath, newPath);
       delFolder(oldPath);

   }
}

分享到:
评论

相关推荐

    java 移动文件.

    Java 文件操作是 Java 编程语言中的一种基本操作,包括文件的移动、复制、删除、剪切等。下面是关于 Java 文件操作的知识点总结: 一、文件移动 文件移动是指将文件从一个目录下移到另一个目录下。在 Java 中,...

    文件移动 java

    // 开始移动文件 for (int i = 0; i ; i++) { if (files[i].isDirectory()) { // 递归移动子目录 fileMove(files[i].getPath(), toDir + "\\" + files[i].getName()); // 移动完成后删除原目录 files[i]....

    java移动文件夹下所有文件

    如果是文件,就使用Java NIO的`Files.move()`方法来移动文件,此方法会覆盖目标文件如果已经存在。 注意,这里使用了Java NIO 2的`Files`类,它提供了更高级的文件操作功能。`Files.move()`方法中的`...

    JAVA实现文件移动

    根据给定的信息,我们可以总结出以下关于“Java实现文件移动”的相关知识点: ### 一、基础知识 1. **Java 输入输出流(IO流)**: - Java 中处理文件读写的基本工具是输入输出流(Input/Output Streams),主要...

    Java 文件移动代码

    然后尝试使用`renameTo()`方法移动文件,这个方法在同一个文件系统内通常能直接完成移动操作。如果`renameTo()`失败,我们就使用自定义的`copyFile()`方法复制文件,然后删除原始文件。`copyFile()`方法通过`...

    Java IO 基础操作(文件读写和移动)

    如果要移动文件,可以使用`renameTo()`方法,但请注意,这种方法并不总是跨文件系统的。如果需要在不同目录间移动,建议先复制再删除原始文件: ```java File source = new File("sourceFile.txt"); File dest = ...

    java 移动指定目录下的文件

    在Java编程语言中,移动文件是一项常见的操作,特别是在处理文件系统任务时。本文将深入探讨如何使用Java API来实现移动指定目录下的文件。我们将主要关注`java.io`和`java.nio`包中的类和方法,它们提供了文件操作...

    java实现文件加密解密

    "java实现文件加密解密" Java 实现文件的加密与解密是指利用 Java 语言将资源文件(包括图片、动画等类型)进行简单的加密和解密。这种策略的原因和好处是将准备好的资源存储在云上,使用时通过网络进行读取即可,...

    java复制文件和java移动文件的示例分享

    Java文件复制与移动技术是Java编程中常用的基础技术之一,涉及到文件I/O操作的多个方面。本文将详细解读如何使用Java实现文件复制和移动功能,特别是针对特定类型文件(如jar文件)的复制操作。 首先,Java通过java...

    java上传文件jar

    在Java开发中,上传文件是一项常见的任务,尤其是在构建Web应用程序时。标题提到的"java上传文件jar"实际上指的是两个关键的Java库,它们是Apache Commons IO和Apache Commons FileUpload。这两个库提供了强大的文件...

    java实现文件的读写操作

    例如,可以使用`Files.copy()`方法复制文件,`Files.move()`方法移动文件,`file.delete()`方法删除文件,以及`file.renameTo()`方法重命名文件。 总结,Java中的文件读写操作涉及到多个类和接口,理解并熟练运用...

    java实现sftp操作工具类

    9)移动文件 10)可以基于chnSftp对象进行开发 依赖类包在我的sftp包下载下提供 版权声明:本工具类为个人兴趣基于chnSftp编写的应用,个人版权在先,后因各个办公环境无相关软件也有相关的个人使用,和办公环境内的...

    java 随机读写Java类文件

    // 移动到文件的第四个字节 byte data = raf.readByte(); // 读取一个字节 // 修改数据并写回 raf.seek(4); raf.writeByte(newData); raf.close(); ``` 这个例子展示了如何读取和修改类文件的一个字节,但...

    java 连接 FTP 文件操作(上传,下载,删除,复制

    在IT行业中,Java是一种广泛应用的编程语言,尤其在文件操作和网络通信方面有着广泛的应用。本文将详细讨论如何使用Java连接FTP(File Transfer Protocol)服务器,进行文件的上传、下载、删除以及复制等操作。 ...

    java上传文件到linux服务器,操作linux服务器上文件,下载linux服务器文件,删除linux服务器文件

    例如,可以使用`rename()`方法重命名文件,`mv()`方法移动文件,`readlink()`获取符号链接的目标,`chattr()`改变文件属性等。 ```java sftp.rename(旧文件路径, 新文件路径); sftp.mv(源文件路径, 目标文件路径); ...

    java实现文件移动并打印日志

    用java将一个目录内的所有文件移动到另一个目录,默认只移动文件最后修改时间一小时以上的并且名为data_in, data_out,log三个文件夹内的文件,自定义下可移动所有文件,也可以将时间限制修改为0。最后打印操作日志。

    java实现对文件的各种操作的工具类.md

    移动文件或文件夹 8. 重命名文件/文件夹 9. 查看指定路径下的所有文件的全路径 10. 查看指定路径下的所有文件 11. 列出指定目录下的所有文件对象 12. 上传文件到指定目录 13. 从指定目录下载文件 14....

    JAVA开发文件管理系统

    使用java开发一个文件管理系统,通过软件达成对电脑上文件的移动复制粘贴删除等功能。

    java移动开发技术

    根据提供的文件信息,标题为“Java移动开发技术”,但描述部分并未给出具体的信息,只重复了“名言警句.txt”字样。标签中仅有一个关键词:“Java”。部分内容似乎并非中文或者出现了乱码的情况,无法从中提取有用...

Global site tag (gtag.js) - Google Analytics