2011-03-19 38 views
5

我已经在java中创建了一个文件“file1”,并且我读取了“file1”并对从“file1”读取的数据进行了一些更改,并且我将新数据写入了另一个文件“ file2“...现在我需要的是删除以前的文件”file1“,并将文件名”file2“更改为”file1“... 请有人帮我这个....在java中删除并重命名一个文件

+1

http://download.oracle.com/javase/1.5.0/docs/api/java/io/File.html – Erik 2011-03-19 12:34:05

回答

16
//rename file 
File file = new File("oldname"); 
File file2 = new File("newname"); 
boolean success = file.renameTo(file2); 

//delete file 
File f = new File("fileToDelete"); 
boolean success = f.delete(); 
+0

我有一个愚蠢的问题,当我跑,我创建了一个新的测试文件'文件东西=新文件(“东西”),并检查后,如果文件存在我得到错误。我不确定我做错了什么? – Bionix1441 2017-09-08 14:44:10

2

您可以使用File.delete()File.rename(File target)来实现此目的。

查看针对java.io.File的Javadoc

1

基本上,Java提供所需的API(见here更多):

file1.delete(); 
file2.renameTo(file1); 
1

由于Java 7可以使用java.nio.file.Files.deletejava.nio.file.Files.move

Path path1 = Paths.get("C:\\file1"); 
Path path2 = Paths.get("C:\\file2"); 

try { 
    Files.delete(path1); 
    Files.move(path2, path1); 
} catch (IOException e) { 
    System.err.println("Something went wrong - " + e); 
} 
0

File.delete()来删除一个文件,它会返回一个布尔值来表示删除操作状态;如果文件被删除,则为true;如果失败则返回false
file.renameTo(file2)重命名一个文件,它将返回一个布尔值来表示重命名操作状态;如果文件被重命名,则为true;如果失败则返回false

package com.software.file; 

    import java.io.File; 

    public class RenameAndDeleteFileExample 
    { 
     public static void main(String[] args) 
     { 
      try{ 
       File file = new File("c:\\test.log"); 
       // File (or directory) with new name 
       File file2 = new File("newname"); 
       //rename file to file2 name 
       boolean success = file.renameTo(file2); 
       if(file2.delete() && success){ 
        System.out.println(file2.getName() + " is renamed and deleted!"); 
       }else{ 
        System.out.println("operation is failed."); 
       } 

      }catch(Exception e){ 

       e.printStackTrace(); 

      } 

     } 
    } 
+1

你的答案只包含代码。如果你可以添加一些关于它的功能和方式的描述,会更好。你可以请[编辑]你的答案并添加它?谢谢! – 2017-04-25 22:24:37