Как получить файл Абсолютный путь в java - PullRequest
0 голосов
/ 05 февраля 2020

Я использую Spring MVC Структура в моем проекте. Структура моего проекта выглядит следующим образом:

project
    |
    |
    |Java Resources
    |       |
    |       src
    WebContent
    |       |
    |       |
            resources
                |
                |
                form
                    |
                    Notification.pdf

Я хочу получить Абсолютный путь Notification.pdf при вызове Контроллера. Я также попробовал следующий код:

File file = new File("Notification.pdf");
        String path = file.getAbsolutePath();
        System.out.println("path: "+path);

Вывод: C: \ Users \ JohnPC \ Desktop \ Notification.pdf

Вывод, который я хочу: D: \ workspace \ project \ WebContent \ Resources \ форма \ Notification.pdf

Ответы [ 2 ]

0 голосов
/ 05 февраля 2020

Единственное, что вы делаете неправильно, вы предполагаете, что при создании файла он создается в текущем каталоге файла, который вы запускаете.

Но обычно при запуске проекта Spring запускается не файл java, который запускается, это либо JAR-файл, создаваемый при сборке проекта Spring, либо WAR-файл. файл, который запускается на сервере приложений. Следовательно, ваш файл никогда не создается в ресурсах каталога. Если вам нужно создать файлы на сервере, вы должны определить каталог stati c на этом сервере, а затем создать файлы в этом определенном каталоге.

Потому что, как только вы создайте файл в этом каталоге stati c, который будет сохранен на сервере. Вы можете создать файл, как вы сделали в вопросе. Просто добавьте путь к файлу в коде.

File file = new File("Path to the file" + "Notification.pdf"); String path = file.getAbsolutePath(); System.out.println("path: "+path);

0 голосов
/ 05 февраля 2020
getClass().getResources("Notification.pdf").getPath()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...