Wenn ich versuche, den Code auszuführen:NoSuchToken Ausnahme für StringTokenizer.nextToken()
import java.io.*;
import java.util.*;
class dothis {
public static void main (String [] args) throws IOException {
BufferedReader f = new BufferedReader(new FileReader("ride.in"));
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("ride.out")));
StringTokenizer st = new StringTokenizer(f.readLine());
String s1 = st.nextToken();
String s2 = st.nextToken();
char[] arr = new char[6];
if (find(s1, arr, 1) == find(s2, arr, 1)) {
out.print("one");
} else {
out.println("two");
}
out.close();
}
}
Mit der Datendatei:
ABCDEF
WERTYU
es hält auf die Ausgabe:
Exception_in_thread_"main"_java.util.NoSuchElementException
at_java.util.StringTokenizer.nextToken(StringTokenizer.java:349)
at_dothis.main(Unknown_Source)
Ich habe eine ähnliche Frage in Stack Overflow gesehen, aber in diesem Fall ist die zweite Zeile der Textdatei leer, daher gab es keine Sekunde Ken gelesen zu werden. Die beiden ersten Zeilen dieser Datendatei enthalten jedoch jeweils einen String. Warum wird ein Token für die zweite Zeile nicht gelesen?