2015-06-28 148 views
-3

我需要编写一个程序,要求输入数字文本文件的文件名,然后根据此数据集计算平均值,中位数等。我编写了程序,以便在输入完整路径(如“C:\ Users \ COSC \ Documents \ inputValues2.txt”)时正确运行,但只要输入inputValues2.txt,它就不会运行。我一直在研究这两者之间的差异,但我不完全理解如何解决这个问题。既然它运行正常,否则,我不相信这是代码的问题,但我是新手,所以我可能是错的。Java中的相对/绝对路径

+4

请发布您的程序代码,以便我们能够更好地为您提供帮助。 – JackWhiteIII

+1

希望在[本示例](http://stackoverflow.com/a/11372350/1057230)中的注释能够说明主题 –

回答

1

您的程序需要知道完整路径才能找到该文件。它不只是在您的计算机上搜索文件“inputValues2.txt”。它需要知道如何到达那里。如果你愿意,你可以将文件移动到你的项目文件夹中,然后你就可以编写“inputValues2.txt”来访问它。我通常创建一个名为在我的项目文件夹“资源”文件夹中,然后让说,我想创建一个图像:

Image i = new Image("res/img.png"); 
+0

,所以有什么方法可以解决这个问题?还是必须始终提供完整的路径? – coscdummy

+1

查看编辑@coscdummy –

+1

谢谢,谢谢!我将该文件保存在我的项目文件夹中,现在只需输入inputValues2.txt即可正确运行!如果这是一个愚蠢的问题,我很抱歉。 – coscdummy

-1

你的文件应该是在类路径。这与您的主类所在的目录位于同一目录中。

建议的做法是将其放置在类路径中的Resources目录中,然后您可以通过"Resources/inputValues2.txt"访问它。

+2

@Downvoter关注意见。 – Mordechai

+0

不是downvoter,但请注意OP说“请求文件名”,这意味着该文件在构建时不知道。另外,你可能需要你的资源,就像你的代码一样,以避免出现nameclash。 –