Entwickler-Ecke

IO, XML und Registry - Txt Datei in Textbox holen


tomycat - Do 30.06.16 06:36
Titel: Txt Datei in Textbox holen
hallo,
ich möchte nur eine Text Datei in eine Texbox holen, aber mit Umlaute wie. Geht aber nicht

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
  private void button1_Click(object sender, EventArgs e)
        {


            string[] lines = System.IO.File.ReadAllLines(@"C:\bllablal.txt", Encoding.ASCII);
            foreach (string line in lines)
            {
                textBox1.Text = "\r\n" + line;
                alles =  line;
            }

            myChar = alles.ToCharArray();
        }

Statt ä bekomme ich ein Fragezeichen.


Moderiert von user profile iconChristian S.: Topic aus Sonstiges (.NET) verschoben am Do 30.06.2016 um 08:02


Christian S. - Do 30.06.16 08:02

Ist ASCII denn wirklich das Encoding dieser Datei?


erfahrener Neuling - Do 30.06.16 11:36

Hi tomycat,

wenn du eine txt-Datei mit Umlauten auslesen willst, kannst du einfach Encoding.Default nehmen.

Gruß Julian


Christian S. - Do 30.06.16 11:43

Das dürfte auch auf die Kodierung ankommen ;)


erfahrener Neuling - Do 30.06.16 12:40

user profile iconChristian S. hat folgendes geschrieben Zum zitierten Posting springen:
Das dürfte auch auf die Kodierung ankommen ;)

Wie findet man denn raus, welche Kodierung die richtige für txt-Dateien auf meinem System ist?


Delete - Do 30.06.16 12:44

- Nachträglich durch die Entwickler-Ecke gelöscht -


Ralf Jansen - Do 30.06.16 12:56

Ein txt Datei enthält meist keine eindeutige Defintion/Kennzeichnung wie sie kodiert ist. Bei utf-8 Kodierung könnte ein BOM am Anfang stehen muß aber nicht.
Es gibt verschiedenste (komplizierte) Methoden aufgrund der Verteilung und Häufigkeit bestimmter Bytes Sprache und Kodierung zu ~erraten~.
Letztlich gilt aber bei txt die Kodierung muß dir der Author der Datei verraten die txt selbst hilft die nur bedingt dabei.

Übliche verdächtige sind utf-8 (sollte man immer zuerst versuchen wenn man es nicht besser weiß) oder wenn es aus einer ebenfalls deutschsprächigen Quelle ist kann man Encoding.GetEncoding(1252) versuchen.


tomycat - Do 30.06.16 19:37

thx all
user profile iconerfahrener Neuling hat folgendes geschrieben Zum zitierten Posting springen:
Hi tomycat,

wenn du eine txt-Datei mit Umlauten auslesen willst, kannst du einfach Encoding.Default nehmen.

Gruß Julian


so gehts :-)