Home >Java >JavaBase >How to write the path of a file in java

How to write the path of a file in java

angryTom
angryTomOriginal
2019-11-12 10:38:243072browse

How to write the path of a file in java

How to write the path to obtain the file in java

We need to obtain the resource file when uploading files and processing files path of. However, the file path obtained in the project may not be the file path we want, because the path obtained in the development project is not consistent with the path after making the jar package. (Recommended tutorial: java tutorial)

1. Get the resource path

String filePath = this.getClass().getResource("").getPath();
System.out.println("filePath: " + filePath);

The path displayed in project development:

filePath: /home/idea/project/java_basic/selfimpr-fileupload/target/classes/com/selfimpr/fileupload/controller/

The path in the jar package of the project:

 filePath: file:/home/idea/project/java_basic/selfimpr-fileupload/target/selfimpr-fileupload-0.0.1-SNAPSHOT.jar!/BOOT-INF/classes!/com/selfimpr/fileupload/controller/

2. Get the project file compilation path

String filePath = this.getClass().getResource("/").getPath();
System.out.println("filePath: " + filePath);

The path displayed during project development:

filePath: file:/home/idea/project/java_basic/selfimpr-fileupload/target/classes/

The path in the jar package of the project:

filePath: file:/home/idea/project/java_basic/selfimpr-fileupload/target/selfimpr-fileupload-0.0.1-SNAPSHOT.jar!/BOOT-INF/classes!/

3. Get the project root path (1)

File files = new File("");
String filePath = files.getCanonicalPath();
System.out.println("filePath: " + filePath);

In The path displayed during project development:

filePath: /home/idea/project/java_basic

The path in the jar package of the project:

filePath: /home/idea/project/java_basic/selfimpr-fileupload/target

4. Obtain the project root path (2)

String filePath = System.getProperty("user.dir");
System.out.println("filePath: " + filePath);

The path shown in the project development:

filePath: /home/idea/project/java_basic
The path in the project jar package:

filePath :/home/idea/project/java_basic/selfimpr-fileupload/target

5. Both development environment and jar environment can use the project path obtained by this method

/*  此方法,传入参数为String,不能带/  */
resourceAsStream = this.getClass().getClassLoader().getResourceAsStream("/templates" + url);
/*  此方法,传入参数为String,不能带/  */
resourceAsStream = this.getClass().getResourceAsStream("/templates" + url);

, whether it is during compilation or in the environment of a jar package, the files in the resources path can be obtained.

The above is the detailed content of How to write the path of a file in java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn