5、javaはどのようにファイルを移動して、ファイルの名前を変更します

2651 ワード

JAva.io.File renameTo(File dest)メソッドでは、ファイルの名前を変更したり、ファイルのディレクトリを移動したりすることができます.
メソッドの移動に成功したり、名前を変更したりしてtrueを返さないとfalseを返します.この戻り値をよくチェックしてください.これはプラットフォームに関連しています.たとえば、ディレクトリに同じファイルがある場合は、移動や名前の変更を続行できません.
macシステムではターゲットファイルを上書きする戻りtrue
Windowsシステムは操作できずfalseに戻ります
コードでは相対的、絶対的な位置から名前変更操作をテストし、異なるディレクトリからの移動と名前変更も操作しました.実行が完了するたびに結果out====が与えられます.

package com.tij.io.file;

import java.io.File;

public class RenameFileJava {

	/**
	 * Rename File or Move File in Java example
	 * @param args
	 */
	public static void main(String[] args) {
		//absolute path rename file
		File file = new File("/Users/GYJ/java.txt");
		File newFile = new File("/Users/GYJ/java1.txt");
		if (file.renameTo(newFile)) {
			System.out.println("rename success");
		} else {
			System.out.println("rename failed");
		}
		//out put: rename success
		
		
		//relative path rename file
		file = new File("DB.properties");
		newFile = new File("NewDB.properties");
		if (file.renameTo(newFile)) {
			System.out.println("rename success");
		} else {
			System.out.println("rename failed");
		}
		//out put: rename success
		
		
		//move file from one directory to another
		file = new File("/Users/GYJ/DB.properties");
		newFile = new File("DB_Move.properties");
		if (file.renameTo(newFile)) {
			System.out.println("move success");
		} else {
			System.out.println("move failed");
		}
		//out put: move success
		
		//when source file is not present(abc.txt is not exists)
		file = new File("/Users/GYJ/abc.txt");
		newFile = new File("gyj.txt");
		if (file.renameTo(newFile)) {
            System.out.println("move success");
        } else {
            System.out.println("move failed");
        }
		//out put:  move failed
		
		
		//when destination already have a file with same name('java1.txt' is already)
		file = new  File( "/Users/GYJ/export.sql" );
        newFile = new  File( "/Users/GYJ/java1.txt" );
        if (file.renameTo(newFile)){
            System.out.println("move success");
        } else {
            System.out.println("move failed");
        }
        //out put:  move failed
	} 

}