2013-06-11 4 views
5

Ich erstelle ein Werkzeug, das Text in einer Textdatei ersetzt. Mein Problem ist, dass File ReadAllLines die hebräischen Zeichen in Gibberish verwandelt (seltsame Fragezeichen )Datei ReadAlllines verwandelt Fremdsprache in Kauderwelsch ()

Weiß jemand, warum das passiert? Beachten Sie, dass ich ein Problem mit Hebräisch in Spielen und dergleichen habe. Und im Editor kann ich keine hebräischen Dokumente speichern. Ich kann hebräische Buchstaben schreiben, aber wenn ich es speichere, sagt es mir, dass es ein Problem damit gibt.

EDIT - Versuchte dies, aber es stellte sich nur die hebräische in reguläre Fragezeichen und nicht „special“ ones-

string[] lines = File.ReadAllLines(fullFilenameDir); 
byte[] htmlBytes = Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes(String.Join("\r\n", lines))); 
char[] htmlChars = new char[Encoding.Unicode.GetCharCount(htmlBytes)]; 
Encoding.Unicode.GetChars(htmlBytes, 0, htmlBytes.Length, htmlChars, 0); 
+1

Welchen Code verwenden Sie? – Sam

+3

Gibt es beim Öffnen der Dateien eine Codierung? – GSerg

+0

@GSerg Ja. "Encoding.Unicode" – Kfirprods

Antwort

11

Versuchen Sie, die Windows-1255 Codepage mit dem Encoder zu erhalten.

var myLines = File.ReadAllLines(@"C:\MyFile.txt", Encoding.GetEncoding("Windows-1255")); 
+0

Ich denke, es hat es behoben! Lass mich das sicher machen und updaten :) – Kfirprods