Domanda

Come si esegue la scansione di un file con Java che non si trova nella directory del file java è?

Ad esempio: il file java si trova in "C: \ Files \ JavaFiles \ test.java" Tuttavia, il file che voglio eseguire la scansione si trova in "C: \ Data \ DataPacket99 \ data.txt"

Nota: Ho già provato a mettere un altro file java nella cartella "C: \ Data" directory e utilizzando il file test.java come classe, ma non funziona. Si cerca ancora di eseguire la scansione dal "C: \ Files \ JavaFiles". Directory

È stato utile?

Soluzione

Usando un percorso assoluto invece di un parente.

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

Quindi è possibile scrivere codice che accede che oggetto file, utilizzando un InputStream o simili.

Altri suggerimenti

È necessario utilizzare percorsi assoluti in roba java.io. Così non new File("data.txt"), ma new File("C:/Data/DataPacket99/data.txt"). Altrimenti sarà relativo alla directory di lavoro corrente, che non possono per-sé essere la stessa in tutti gli ambienti o quello che ci si aspetta.

Si deve usare un percorso assoluto invece di un percorso relativo.

Si potrebbe utilizzare File file = new File("C:/Data/DataPacket99/data.txt"); ma potrebbe rendere la vita più facile in futuro di utilizzare una selezione dei file finestra se in qualsiasi momento l'utente dovrà inserire il percorso del file.

Vorrei provare questo:

File file = new File("../../Data/DataPacket99/data.txt");
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top