Dieser Java-Code wird kompiliert. Aber als ich dieses Programm laufen ließ, dauerte es eine sehr lange Zeit und brachte keine Ergebnisse, und schließlich sagte Runofoutspace, ich denke, es ist in eine Endlosschleife geraten, aber ich kann nicht verstehen warum.Unendliche Schleife beim Versuch, eine Datei zu lesen und zu erstellen
import java.util.*;
import java.io.*;
public class Exercise3{
public static void main (String[] args){
File infile = new File(args[0]);
File outfile = new File("Ex3.txt");
try {
Scanner scan = new Scanner(infile);
ArrayList<String> readFile = new ArrayList<String>();
String findWord = args[1];
String replaceWord = args[2];
while(scan.hasNextLine())
{
readFile.add(scan.nextLine());
}
//System.out.println(readFile);
for (int i=0; i<readFile.size();i++)
{
String n = readFile.get(i);
n = n.replaceAll(findWord,replaceWord);
readFile.add(i,n);
}
PrintWriter output = new PrintWriter(outfile);
for (int i=0; i<readFile.size();i++)
{
output.println(readFile.get(i));
}
output.close();
scan.close();
}
catch (FileNotFoundException e){
System.err.println("file not found.");
}
}
}
Wie weiß Ihr Programm, dass es aufhören muss, nach Eingaben zu suchen? –