Ich habe mit einem Java Programm das Problem, daß es eine ANSI (Codepage 1252/Windows) Textdatei lesen muß und den Inhalt in eine SQLite 3 Datenbank einspeichern. Nun haut das unter Windows hin, die Zeilen die auch Umlaute enthalten , lassen sich später wieder lesen und sehen gut aus (das gleiche Programm).
Nicht so unter Linux Mint. Die Umlaute gehen verloren, so wie ich herausfand, schon beim Einspeichern.
Nun weiß ich ja, Java benutzt UTF8 und wollte das im Linux-Clone des Programms konvertieren. Nur ging das nicht, da ich die Codepage nicht herausfinden/einstellen kann bzw die Konvertierung schief geht, es sieht irgendwie noch komischer aus. Da ich mir nicht sicher war bezüglich der CP 1252. habe ich ChatGPT mir Möglichkeiten geben lassen, die Konvertierung auch bei unbekannter Codepage zu machen und kam eben auf das universalchardet.
Ich habe es heruntergeladen aus dem GIT und suchte die .jar die ich meinem Buildpath hinzufügen kann - so kenne ich es aus der "Schule" (ich habe Java mal 2014 in einem Weiterbildungskurs gelernt). Nur leider ist da keine .jar nur das komplette Java-Projekt. Wenn ich das in Eclipse importiere, kann ich es nicht erstellen, weil da wird was von Maven verlangt/gemeckert, was ich nicht kann. Ist Maven schwierig/notwenig? Ich möchte mir auch nicht die ganze Eclipse/den Workspace zerschießen.
Könnte ich die Java-Klassen adoptieren und in mein Projekt als neues Package aufnehmen? Warum finde ich keine fertige .jar?
Das "Problem" habe ich auch versucht anders zu lösen :
1 Konvertieren der Textdatei nach UTF8, leider fliegen mir dann meine parallelen Lazaraus-Programme um die Ohren, Lazarus nutzt zwar auch standardmäßig UTF8. nicht aber meine Anwendungsprogramme, die aus historischen Gründen in der Windows/CP1252 Welt arbeiten, teils noch schlimmer mit CP850 weil mein PC/Windows/CMD total verdreht ist und alleine auf CP850 geht und weil ich andererseits Rücksicht auf MSDOS/Win32 nehmen muß, wo ich gerne eine 1-Byte-Codierung behalten will.
OK ich habe die Textdatei NUR FÜR LINUX JAVA in UTF8-Form konvertiert, aber Java sagt trotzdem nein.
2.Ich habe im Programm statt an der schon eingelesenen Zeichenketten (FileReader+BufferedReader) früher anzusetzen und habe jetzt was mit (InputStreamReader/BufferedReader) wo ich CP1252 gleich angeben kann. Unter Linux lief es, nun muß ich noch sehen ob ich es für Windows auch so lassen kann
Aber wie kann ich den universalchardet ausprobieren?
Nicht so unter Linux Mint. Die Umlaute gehen verloren, so wie ich herausfand, schon beim Einspeichern.
Nun weiß ich ja, Java benutzt UTF8 und wollte das im Linux-Clone des Programms konvertieren. Nur ging das nicht, da ich die Codepage nicht herausfinden/einstellen kann bzw die Konvertierung schief geht, es sieht irgendwie noch komischer aus. Da ich mir nicht sicher war bezüglich der CP 1252. habe ich ChatGPT mir Möglichkeiten geben lassen, die Konvertierung auch bei unbekannter Codepage zu machen und kam eben auf das universalchardet.
Ich habe es heruntergeladen aus dem GIT und suchte die .jar die ich meinem Buildpath hinzufügen kann - so kenne ich es aus der "Schule" (ich habe Java mal 2014 in einem Weiterbildungskurs gelernt). Nur leider ist da keine .jar nur das komplette Java-Projekt. Wenn ich das in Eclipse importiere, kann ich es nicht erstellen, weil da wird was von Maven verlangt/gemeckert, was ich nicht kann. Ist Maven schwierig/notwenig? Ich möchte mir auch nicht die ganze Eclipse/den Workspace zerschießen.
Könnte ich die Java-Klassen adoptieren und in mein Projekt als neues Package aufnehmen? Warum finde ich keine fertige .jar?
Das "Problem" habe ich auch versucht anders zu lösen :
1 Konvertieren der Textdatei nach UTF8, leider fliegen mir dann meine parallelen Lazaraus-Programme um die Ohren, Lazarus nutzt zwar auch standardmäßig UTF8. nicht aber meine Anwendungsprogramme, die aus historischen Gründen in der Windows/CP1252 Welt arbeiten, teils noch schlimmer mit CP850 weil mein PC/Windows/CMD total verdreht ist und alleine auf CP850 geht und weil ich andererseits Rücksicht auf MSDOS/Win32 nehmen muß, wo ich gerne eine 1-Byte-Codierung behalten will.
OK ich habe die Textdatei NUR FÜR LINUX JAVA in UTF8-Form konvertiert, aber Java sagt trotzdem nein.
2.Ich habe im Programm statt an der schon eingelesenen Zeichenketten (FileReader+BufferedReader) früher anzusetzen und habe jetzt was mit (InputStreamReader/BufferedReader) wo ich CP1252 gleich angeben kann. Unter Linux lief es, nun muß ich noch sehen ob ich es für Windows auch so lassen kann
Aber wie kann ich den universalchardet ausprobieren?