Reference a Text File with relative path in Java with the IntelliJ IDEA

32.6k Views Asked by At

I have a program that reads numbers from a .txt file. My problem is where to place this file, or how to reference it with a relative path to make this file accessible without using the absolute path.

5

There are 5 best solutions below

1
On BEST ANSWER

When you try to open a file, it takes your current working path. For example this working tree:

Project
|->src
|   |-->MyClass.java
|   |-->MyFile1.txt
|->res
   |->files
     |-->MyFile2.txt

You can use new File("MyFile1.txt"); for MyFile1.

or

new File("./res/files/MyFile2.txt"); for MyFile2.

0
On

You need to start your path from src. "src/your/path/file.txt". See my answer here

0
On

If file1.txt in 'src' it will have path as "src\main\java\file1.txt". Relative path starts from src.

0
On

@Big Pumpkin Not sure about the terminal showing me the path of the "root". But it does turn out to be the top most directory in a multi-module project.

enter image description here

1
On

If you have a multi-project setup, it may not be obvious what the "root" directory is for a relative path. In that case, open the Terminal tab in your IntelliJ and see what directory it lands in. That is the "root" directory. Your relative path should start there.