Java- relative path of text file in main?

泄露秘密 提交于 2019-11-27 14:00:08

问题


I was wondering how to specifiy a relative path name to a text file that is stored in my src folder of a java project. I would like to store a string with the path of this text file. For example if I had example.txt located in the src folder of my java project how would I go about finding its relative path? I am also doing this in my main so I'm having trouble using .getResource(). How would I do this? Thanks.

My files path is as followed from the properties in eclipse /MyProject/src/data.txt

I've tried:

String path = "/MyProject/src/data.txt";

But that doesn't work?


回答1:


If you are using eclipse, place your text file in the root of the project folder, outside the /src and /bin folders. It should be now accessible via a relative path directly.

If you want to access a file in src folder, you have to append the /src/ prefix before the file path/name




回答2:


Use the src/ prefix before the file path/name.

String path = "src/data.txt"; 



回答3:


The path is relative to the directory you execute the "java" command.e.g.

 /opt/projects/myproject>$ java -cp <whatever your classpath is that contains your class files> com.mycompany.mypackage.MyJavaClass

in this case the MyJavaClass would find files relative to the directory
/opt/projects/myproject

There is another way to do this if you like: you can use load resources, which are found via the classpath mechanism.

 getClass().getResource("foo.txt");

You can see this posting for more info

Preferred way of loading resources in Java



来源:https://stackoverflow.com/questions/15281428/java-relative-path-of-text-file-in-main

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!