import java.io.*;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args){
Persona persona1 = new Persona();
try{
StringTokenizer st;
BufferedReader br = new BufferedReader(new FileReader("entrada.txt"));
String linea = br.readLine();
PrintWriter pw = new PrintWriter(new FileWriter("datos.csv"));
while(linea != null){
st = new StringTokenizer(linea);
persona1.setNombre(st.nextToken());
persona1.setRFC(st.nextToken());
persona1.setSueldoMensual(Double.parseDouble(st.nextToken());
persona1.setPrimaVacacional(Double.parseDouble(st.nextToken()));
persona1.setGastosHospitalarios(Double.parseDouble(st.nextToken()));
persona1.setGastosFunerarios(Double.parseDouble(st.nextToken()));
persona1.setSGMM(Double.parseDouble(st.nextToken()));
persona1.setGastosHipotecarios(Double.parseDouble(st.nextToken()));
persona1.setDonativos(Double.parseDouble(st.nextToken()));
persona1.setAportacionRetiro(Double.parseDouble(st.nextToken()));
persona1.setTransporteEscolar(Double.parseDouble(st.nextToken()));
persona1.setNivelEducativo(st.nextToken());
persona1.setColegiaturaTotal(Double.parseDouble(st.nextToken()));
pw.println(persona1.getNombre() + "," + persona1.getRFC() + "," + persona1.getSueldoMensual()
+ "," + persona1.getPrimaVacacional() + "," + persona1.getGastosHospitalarios() + "," + persona1.getGastosFunerarios()
+ "," + persona1.getSGMM() + "," + persona1.getGastosHipotecarios() + "," + persona1.getDonativos()
+ "," + persona1.getAportacionRetiro() + "," + persona1.getTransporteEscolar()
+ "," + persona1.getNivelEducativo() + "," + persona1.getColegiaturaTotal());
}
br.close();
pw.close();
}
catch(FileNotFoundException ex){
System.out.println("Ocurrio un error " + ex);
}
catch(IOException ex){
System.out.println("Ocurrio un error " + ex);
}
}
}
Mein Programm erhält eine TXT-Datei und gibt die Informationen in einer CSV-Datei, aber wenn ich es laufen gibt es diesen Fehler:Warum gibt mein Code diesen Fehler zurück: java.util.NoSuchElementException?
Exception in thread "main" java.util.NoSuchElementException
at java.util.StringTokenizer.nextToken(StringTokenizer.java:349)
at Main.main(Main.java:26)
Dies hat keinen Sinn, weil ich ein anderes Programm, das macht eine ähnliche Sache, aber ich kann nicht herausfinden, was das Problem ist.
Da die Zeile kein nächstes Token hat, wenn Sie versuchen, es in Zeile 26 Ihrer Klasse zu erhalten. Rea die Dokumentation von StringTokenizer. Überprüfen Sie Ihre Eingabedatei. –
Es hat diesen Fehler nicht zurückgegeben, es hat diese Ausnahme ausgelöst. Korrekte Terminologie bitte. – EJP