我明天有一个编程迷你竞赛,我们将被要求在给定的闪存驱动器上创建我们的程序。评委们不会编辑我们的代码,所以它会运行,我担心闪存盘符会改变,然后我的程序将无法找到它需要读入的文本文件。
我总是像这样使用我的闪存驱动器的路径:
FileReader file = new FileReader("E:/BPA/Crypto/input.txt");
有没有办法保证我的程序能够读取文本文件,即使我的闪存驱动器的盘符名称在评委计算机上与我的不同?谢谢!
最佳答案
你可以
- 将文件放入你的源代码中
- 使用
Class.getResourceAsStream(String name)
获取文件的InputStream
例如,如果您有类 x.y.z.A
- 复制
input.txt
到src文件夹到x/y/z包 - 获取对应的
InputStreamReader
作为InputStreamReader fileStream = new InputStreamReader(A.class.getResourceAsStream("input.txt"));
关于java - Java 相对路径与绝对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41625533/