"Verliere" Encoding beim speichern in Datei

Status
Nicht offen für weitere Antworten.

WeirdAl

Bekanntes Mitglied
Hallo,
ich muss einen Servlet-Inputstream in eine Datei schreiben, jedoch habe ich zZ das Problem, dass ich beim Speichern des Streams Umlaute "verliere", da dieser Stream utf-8 codiert ist und ich das wohl beim Speichern der Datei irgendwie berücksichtigen muss.

Im Moment schreibe ich den Inputstream folgendermaßen weg (in = Servlet-Inputstream):
Code:
        tempFile = File.createTempFile("test", ".tmp");
        tempFile.deleteOnExit();

        FileOutputStream fout = null;

        try {

            fout = new FileOutputStream(tempFile);
            
            byte[] buf = new byte[2048];
            int len;
            while ((len = in.read(buf)) != -1) {
                fout.write(buf, 0, len);
            }

        }finally {
            if (in != null) {
                in.close();
            }
            if (fout != null) {
                fout.close();
            }
        }

Gibt es eine Möglichkeit zu "sagen", dass es sich um einen UTF-8 Stream handelt, damit die Sonderzeichen im File lesbar bleiben?
 

Wildcard

Top Contributor
Ein OutputStream hat kein Encoding, weil er nur Bytes schreibt. Nur Writer haben ein Encoding.
Im übrigen schreibt der Stream genau das was du ihm gibst, vielleicht solltest du deine Daten also in einem Editor anzeigen lassen der UTF-8 versteht.
 

Joker

Bekanntes Mitglied
beim FileOutputStream kann man das Encoding nicht angeben, da wird immer das default Encoding des Systems genommen.

nimm den OutputStreamWriter, z.B. so:
Code:
BufferedWriter outfile = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("message.txt"),"udf-8" ));
 

WeirdAl

Bekanntes Mitglied
Hallo und Danke,
klingt irgendwie Logisch das Byte = Byte ist :).

Bei dem Stream handelt es sich um eine XML Datei, die als Encoding UTF-8 eingestellt hat.
Als ich mir diese Datei per vi angesehen habe, waren die Umlaute zerstückelt bzw. nicht lesbar, sobald ich jedoch die Files mir über Mozilla angesehen habe wurden die Umlaute korrekt dargestellt.
Ich weiß zwar nicht, ob dieses Verhalten so normal ist, aber solange am Ende alles korrekt angezeigt wird solls mir recht sein. :)

Danke nochmals.
 

Wildcard

Top Contributor
Du musst vi auch mitteilen das es sich um UTF-8 handelt. Der wertet ja nicht den XML Header aus, er zeigt nur Text.
 

HeRaider

Aktives Mitglied
Also wenns sich um ne XML-Datei handelt dann würde ich diese anders behandeln. Schon mal dran gedacht vielleicht einen Parser zum einlesen zu verwenden und dann auch mit entsprechenden Klassen die Datei zu schreiben? Dabei kann man dann auch gleich prüfen ob die XML-Datei ok ist.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G XML encoding wird nicht übernommen Java Basics - Anfänger-Themen 17
B CSV einlesen - Parameter a) encoding b) delimiter Java Basics - Anfänger-Themen 7
I JAXBContext / UnmarshalException / Content is not allowed in prolog / encoding="iso-8859-15" Java Basics - Anfänger-Themen 2
M DBF-Files und Encoding Java Basics - Anfänger-Themen 4
J Encoding Problem beim Einlesen einer txt Datei mit Umlauten Java Basics - Anfänger-Themen 3
K Encoding von JTextfield Java Basics - Anfänger-Themen 2
S encoding Java Basics - Anfänger-Themen 5
D Encoding Java Basics - Anfänger-Themen 7
M Input/Output Namen der Files aus einem Ordner MIT bestimmten Encoding auslesen? Java Basics - Anfänger-Themen 3
S Sonderzeichen "§" wird nicht erkannt - Stichwort Encoding! Java Basics - Anfänger-Themen 13
C Problem mit encoding und String Suche Java Basics - Anfänger-Themen 6
P String und das encoding Java Basics - Anfänger-Themen 4
S Encoding für Stringparsing Java Basics - Anfänger-Themen 4
N Das alte Thema "File Encoding" Java Basics - Anfänger-Themen 2
G Java Encoding von Java 5 hat sich geändert bei Java 6 ? Java Basics - Anfänger-Themen 3
G Character Encoding Java Basics - Anfänger-Themen 3
G encoding Java Basics - Anfänger-Themen 3
G Encoding Problem mit Eingabeaufforderung unter Windows? Java Basics - Anfänger-Themen 4
V String encoding überprüfen Java Basics - Anfänger-Themen 22
S HTML mit num. Unicode Notation (was:Probleme bei Encoding) Java Basics - Anfänger-Themen 7
M Java VM file encoding von CP1252 auf ISO-8859-1 ändern Java Basics - Anfänger-Themen 1
Juelin jedit Fehler beim starten Java Basics - Anfänger-Themen 2
Kerstininer Vererbung Hilfe beim lernen von Objektorientierung für eine Klausur Java Basics - Anfänger-Themen 10
A Hilfe beim Lesen von Pfaden und Systemvariablen Java Basics - Anfänger-Themen 3
M Ausgabe beim Overloading Java Basics - Anfänger-Themen 3
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
M Nullpointer beim befüllen meiner Liste im Object Java Basics - Anfänger-Themen 3
J Beim Start des Programms zB. eine Linie in JPanel ausgeben Java Basics - Anfänger-Themen 4
I Projekte in IDE untereinander sharen / Probleme beim Build Java Basics - Anfänger-Themen 8
paulen1 Best Practice "Unchecked Assignment" Warnung beim erstellen eines 2D Arrays of Arraylists Java Basics - Anfänger-Themen 2
T Probleme beim Import eines Git-Repos Java Basics - Anfänger-Themen 2
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
T DamagedFontException beim drucken Java Basics - Anfänger-Themen 3
Z SNAKE Schlange beim Aufheben von Essen verlängern Java Basics - Anfänger-Themen 4
Bugs Bunny Fehlerhafte Berechnung beim erneuten Durchlaufen der Schleife Java Basics - Anfänger-Themen 5
stormyark Fehler beim überschreiben einer Variable Java Basics - Anfänger-Themen 1
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
Fiedelbambu Prüfen von Komma stelle beim Taschenrechner Java Basics - Anfänger-Themen 5
B Objekte verschwinden beim Übersetzen Java Basics - Anfänger-Themen 5
L Beim Java Programmstart, mehrere Parameter über die Kommandozeile übergeben Java Basics - Anfänger-Themen 9
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5
X Hilfe beim Übertragen in eine For-Schleife Java Basics - Anfänger-Themen 1
S Fehler beim Programm Java Basics - Anfänger-Themen 2
G Main Methode wird beim ersten Aufruf nicht richtig ausgeführt Java Basics - Anfänger-Themen 1
M String beim einlesen formatieren Java Basics - Anfänger-Themen 12
N Exception beim Verwenden von Arraylist? Java Basics - Anfänger-Themen 10
I InputStream beim zweiten Mal fehlerhaft Java Basics - Anfänger-Themen 10
C Fehler beim erstellen eines Objektes Java Basics - Anfänger-Themen 3
C Brauche Hilfe beim Schreiben eines Programmes :/ Java Basics - Anfänger-Themen 1
cmn489 Werte beim Funktionsaufruf in ein Feld übertragen(falls dieses leer ist) Java Basics - Anfänger-Themen 1
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
Nerdinfekt BMI Rechner, fehler beim Zurückgeben des Strings? Java Basics - Anfänger-Themen 2
CptK Richtigen Pfad beim einlesen von Datei finden Java Basics - Anfänger-Themen 2
O Methode in while-Schleife aufrufen geht nur beim ersten Mal Java Basics - Anfänger-Themen 2
pry bitte Hilfe beim Kreditrechner objektorientiert Java Basics - Anfänger-Themen 6
J Hilfe beim Label animieren Java Basics - Anfänger-Themen 1
Avalon Programmierstil beim Mocken Java Basics - Anfänger-Themen 45
Avalon NullPointerException beim Mocken Java Basics - Anfänger-Themen 6
J Hilfe beim verstehen Java Basics - Anfänger-Themen 3
A Fehler beim Ausführen einer class Datei Java Basics - Anfänger-Themen 6
P Problem beim Überschreiben einer vererbten Methode Java Basics - Anfänger-Themen 4
M Compiler-Fehler Fehler beim Ausführen des Codes Java Basics - Anfänger-Themen 25
L Anfänger braucht Hilfe - Stecke beim Lernen fest Java Basics - Anfänger-Themen 10
N Probleme beim printen von Arrays durch for Schleife Java Basics - Anfänger-Themen 3
Bluedaishi Hilfe beim erklären dieser Methode Java Basics - Anfänger-Themen 5
E Macht Java Rechenfehler beim Potenzieren und Mod? Java Basics - Anfänger-Themen 5
J Hilfe beim Programmieren Java Basics - Anfänger-Themen 5
C Fehler beim Speichern (Build projekt) Java Basics - Anfänger-Themen 42
S Endlosschleife beim Ausgeben einer LinkedList Java Basics - Anfänger-Themen 2
tom.j85 TicTacToe - probleme beim Casten Java Basics - Anfänger-Themen 6
J Problem beim vergleich von zwei Integer Java Basics - Anfänger-Themen 3
Kirby.exe Fehler beim Ausgeben Java Basics - Anfänger-Themen 2
L Brauche Hilfe beim arbeiten mit Konstruktoren Java Basics - Anfänger-Themen 20
D Was tun gegen zu komplzierten Denken beim Programmieren Java Basics - Anfänger-Themen 27
G Problem beim Speichern von Objekten in einer Datei Java Basics - Anfänger-Themen 7
S Collections funktionale Listen (ListNode<E>) review und problem beim clone Java Basics - Anfänger-Themen 0
J NullPointerException beim Klonnen eines Arayys und beim aufrufen einer Methode Java Basics - Anfänger-Themen 2
J Fehler beim generieren von 4 Zufallszahlen Zahl doppelt ist eigentlich ausgeschlossen Java Basics - Anfänger-Themen 9
L Kleine Hilfe beim Schreiben eines Programmes benötigt :D Java Basics - Anfänger-Themen 40
T Fehlermeldung beim Versuch, einen String einzulesen Java Basics - Anfänger-Themen 4
V Wie wiederhole ich eine for-Schleife beim erreichen eines Wertes Java Basics - Anfänger-Themen 9
W Hilfe beim Chat Programm Java Basics - Anfänger-Themen 14
D Beim Programmieren auf die Logisch einfache Lösung kommen. Java Basics - Anfänger-Themen 17
S IndexOutOfBoundsException beim hinzufügen eines Elements zu einer Liste Java Basics - Anfänger-Themen 11
R String index out of range: -1 beim Datei Parsen Java Basics - Anfänger-Themen 15
I Methoden List.contains() beim 2. Element = true Java Basics - Anfänger-Themen 1
B EJB und Arquillian - bekomme Nullpointer Exception beim Aufruf der EJB Klasse Java Basics - Anfänger-Themen 40
O Verwirrt beim Java Collection Framework aufruf! Java Basics - Anfänger-Themen 9
S switch case fängt beim letzten case an Java Basics - Anfänger-Themen 6
S Erste Schritte Hilfe beim lernen von Programmieren Java Basics - Anfänger-Themen 2
der_Schokomuffin Hilfe gesucht beim Thema Objekte übergeben! Java Basics - Anfänger-Themen 2
A Pendeltouren beim Savings erfahren "schummeln" in Ordnung? Java Basics - Anfänger-Themen 1
dapzoo Compiler-Fehler Beim Werte verteilen in Objektarray NullPointerException Java Basics - Anfänger-Themen 4
C Methoden Problem beim Speichern von Variablen Java Basics - Anfänger-Themen 1
T Fehlermeldung beim Starten von FlashTool Java Basics - Anfänger-Themen 27
C Rekursives Backtracking beim Spiel Peg Java Basics - Anfänger-Themen 22

Ähnliche Java Themen

Neue Themen


Oben