在java中,我使用相对路径来创建这样的文件:
File file = new File("filename.txt");
程序如何解决路径?在我的程序中,我遇到了与此相关的问题。当我工作时,我使用eclipse - 它从编译的文件中运行程序(不将其打包到.jar)。最终程序将从jar文件或在ubuntu中使用一些脚本运行。在上述3个案例中,代码在不同目录中创建路径。要解决它,我必须了解它是如何工作的。那么java如何解析这样的相对路径?
答案 0 :(得分:2)
它相对于进程的当前工作目录解析它。例如,您可以在运行配置中在Eclipse中指定。
基本上,您应该使用绝对文件名,或者确保从适当的目录运行它。 (您还没有表明 你是如何从jar文件或脚本中运行它的......)
答案 1 :(得分:2)
对于java,相对路径是相对于工作目录的,即从您开始应用程序的目录。您可以执行String current = new java.io.File( "." ).getCanonicalPath();
之类的操作来查找它的位置。
通常,在Eclipse中,它是项目目录。
答案 2 :(得分:0)
您当前正在运行的文件的目录是c://abc//xyz//yourRunningFile.
然后你的文件就像c://abc//xyz//filename.txt