Изменить имя файла с помощью Java - PullRequest
0 голосов
/ 15 октября 2019

Я анализирую имя файла и пароль, теперь мне нужно изменить имя файла и вернуть измененное имя файла.

import java.io.File;
import java.io.IOException;

public class Main
{
   public static String renameFile(String fileName, String password)
           throws IOException {
       String new_name="modified";
       File oldFile = new File(fileName);
       File newFile = new File(new_name);

       if(oldFile.renameTo(newFile)){
           return newFile.getName();
       }
       return null;

   }

   public static void main(String[] args) throws IOException {
       System.out.println(renameFile("C:\\Users\\RSk\\Desktop\\NAR.pdf","none"));
   }

}

Но я не могу продолжить дальше. Любая помощь будет принята с благодарностью.

1 Ответ

2 голосов
/ 15 октября 2019

1-й Создайте File Object файла со старым именем, а затем переименуйте его. Попробуйте это:

public static String renameFile(String fileName, String password) {
        String prefix = fileName.substring(0, fileName.lastIndexOf("\\")+1); //path of file
        String extension = fileName.substring(fileName.lastIndexOf(".")); //extension
        String new_name= prefix+"modified"+extension;
        File oldFile = new File(fileName);
        File newFile = new File(new_name);  //you cannot use string to rename so you need to create a file object with that new name

        if(oldFile.renameTo(newFile)){
            return newFile.getName();
        }
        return null;
    }

ИСПОЛЬЗОВАНИЕ:

public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("Enter file name");
        String fileName = scanner.nextLine();
        System.out.println("Enter password");
        String password = scanner.nextLine();

        System.out.println(renameFile(fileName,password));

}

PS: Вам также необходимо убедиться, что new_name должен быть правильным путем (где вы хотите файл), иначе он будет перемещен в папку по умолчанию с переименованием

renameTo () Javadoc

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...