so habe ich ein Problem beim Lesen einer Datei, die über die Befehlszeile an mein Programm übergeben wird. Also heißt mein Programm printFile. Ich folgendes tun:Abrufen einer Datei von einem Dateinamen in der Befehlszeile (String [] Args)
java printFile text1.txt
In meinem Haupt, ich habe:
try{
Scanner scan=new Scanner(args[0]);
while(scan.hasNextLine())
{
System.out.println(scan.nextLine());
}
}
catch(IOException e)
{
e.printStackTrace();
}
Wie kann ich richtig die Datei im durch die Befehlszeile übergeben werden?
Sie erhalten die Dateinamen über 'args [0]'. Aber Sie sollten die [Javadoc] (https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#Scanner (java.lang.String)) über was diese 'Scanner' lesen Konstruktor tut: Token die Zeichenkette selbst; Das wird nicht als Dateiname behandelt. –
Wie lese ich den Text in der Datei, die in Args [0] ist? Wie in, wie würde ich den Dateipfad von nur args [0] erhalten? Aber ich sehe was du sagst. – Tom
Sie tun etwas wie erstellen Sie einen 'FileInputStream'. –