Как сканировать файл в другом каталоге в Java? - PullRequest
3 голосов
/ 05 января 2010

Как вы сканируете файл с использованием Java, которого нет в каталоге, в котором находится файл Java?

Например: файл java находится по адресу "C: \ Files \ JavaFiles \ test.java". Однако файл, который я хочу сканировать, находится по адресу "C: \ Data \ DataPacket99 \ data.txt"

Примечание. Я уже пытался поместить другой файл Java в каталог «C: \ Data» и использовать файл test.java в качестве класса, но он не работает. Он все еще пытается выполнить сканирование из каталога "C: \ Files \ JavaFiles".

Ответы [ 4 ]

4 голосов
/ 05 января 2010

Используя абсолютный путь вместо относительного.

File file = new File("C:\\Data\\DataPacket99\\data.txt");

Затем вы можете написать код, который обращается к этому объекту файла, используя InputStream или аналогичный.

3 голосов
/ 05 января 2010

Вам нужно использовать абсолютные пути в java.io. Таким образом, не new File("data.txt"), а new File("C:/Data/DataPacket99/data.txt"). В противном случае он будет относиться к текущему рабочему каталогу, который не может быть одинаковым во всех средах или в том, который вы ожидаете.

2 голосов
/ 05 января 2010

Вы должны использовать абсолютный путь вместо относительного пути.

Вы можете использовать File file = new File("C:/Data/DataPacket99/data.txt");, но в будущем вам будет проще использовать диалоговое окно выбора файла , если в любой момент пользователю потребуется ввести путь к файлу.

1 голос
/ 05 января 2010

Я бы попробовал это:

File file = new File("../../Data/DataPacket99/data.txt");
...