Vielen Dank für die Hilfe. Was ich tun müssen, ist die folgende:Nur ein Token aus einer Datei lesen
** Öffnen einer Datei **
** Lesen Sie den ersten Token [Zeichenfolge] in der Datei zum Lesen **
** Melden Sie den nächsten Read_Cursor_Position **
** das Token zurück **
** Schließen Sie die Datei **
** die Datei wieder öffnen **
** Lesen Sie die * zweite * Token aus der Datei **
und so weiter und so fort, bis alle erforderlichen Daten gelesen wurden. Ich bin neu in Java, aber in C++ Tellg oder Tellp wird verwendet, um die Cursorposition und getline zum Lesen nur ein Token aus einer Datei zu extrahieren. Ich hoffe, diese Erklärung erklärt meine Frage besser.
Nach dem Schreiben einer Methode, die Daten mit einem Trennzeichen in eine UTF-Datei ausgibt, versuche ich jetzt, die Daten aus der UTF-Datei zu extrahieren. Die Art, wie die Daten extrahiert werden müssen, ist zu der Zeit ein Token, die Tokens haben, wie ich bereits sagte, ein Trennzeichen und alles, was Java tun muss, ist das Lesen des Tokens der Datei, bis das Trennzeichen gefunden wird. Hier ist der Code für den Verfasser Methode:
public void writeData(String data) throws IOException {
try {
dout.writeUTF(data);
dout.writeBytes("^");
} catch(IOException e) {
throw e;
}
}
und hier ist der Leser:
public void readData() throws IllegalStateException {
try {
apstr = new StringBuilder();
while(scan.hasNext()) {
apstr.delete(0,apstr.length());
apstr.append(scan.next());
System.out.println("The token is: " + apstr);
}
} catch(IllegalStateException e) {
scan.close();
throw e;
}
scan.close();
}
Die Datei enthält die folgenden Daten: Java^C++^PHP^ und der Ausgang ist: Java^C++^PHP^ aber alles, was ich lesen möchte, ist das Wort Java
Wie kann ich machen Java das gleiche tun?
übrigens, wie gehe ich über das Posten einer neuen Frage? Auf dieser Webseite gibt es keine Schaltfläche, auf der "Eine neue Frage veröffentlichen" steht. Danke im Voraus.
so liest der Scanner aus der Datei? Dann willst du writeUTF nicht benutzen. writeUTF codiert nicht so, wie Sie denken. Verwenden Sie einen Writer und geben Sie UTF-8-Codierung – MeBigFatGuy
Btw, Sie _cannot_ möglicherweise Ihren genauen Code posten. Die Printline stimmt nicht mit Ihrer angeblichen Ausgabe überein. :) – Keith