danimoe
Altgedient
- Registriert
- 21. Dezember 2005
- Beiträge
- 1.781
Weiß jemand warum ich solche Sonderzeichen mitgeliefert bekomme, wenn ich eine CSV-Datei einlese?
Also zwischgen jedem (!) Zeichen ist da irgendein Sonderzeichen. Zumindest interpretiert das Programm da welche rein. Am Anfang und am Ende jeder Zeile könnte ich es ja noch verstehen, aber doch nicht in jeder Zeile. Excel zeigt die Datei auch ganz normal an.
Code:public static void main(String[] args) { Internationalizer c = new Internationalizer(); c.readData(); c.printData(); } public void readData() { try { FileReader file = new FileReader("C:\\me\\Temp\\google.csv"); BufferedReader data = new BufferedReader(file); while ((zeile = data.readLine()) != null) { split = zeile.split(";"); for(int i=0; i<split.length; i++) { //leere Zeilen ignorieren if( !(split[i].equals("")) ) //eventuelle Leerzeichen zwischen zwei ';' entfernen //und Wert in Liste schreiben list.add(split[i].trim()); } } } catch (FileNotFoundException e) { System.out.println("Datei nicht gefunden"); } catch (IOException e) { System.out.println("E/A-Fehler"); } } public void printData() { int max = list.size(); for(int i=0; i<max; i++) { System.out.println(list.get(i)); } }
Hundert pro irgendne Codierungsgeschichte. Wie ich den Scheiß hasse.
Öffne ma in Notepad++ oder PSPad und änder die Kodierung. Vielleicht bekommst du bei einer nicht son Scheiß raus. Dann weißte wenigstens wie du die File zu nehmen hast, verstehste
Bzw. kannst du wenn du die File öffnest sehen wie die File kodiert ist und kannst dann bevor du die Datei da ausliest umkodieren.
Excel wird diese Zeichen auch irgendwie interpretieren können. Die Frage ist nur wie =)
Zuletzt bearbeitet von einem Moderator: