Visual C#: Datei öffnen und in Textbox anzeigen

Von: , Frage gestellt am Fr, 7. Jul 2006

Hallo,

bin ein Neuling in C# und habe schon das erste Problem.
Ich möchte den Inhalt einer Datein in einer Textbox anzeigen.
Leider werden Umlaute wie 'Ä','ö', etc oder das 'ß' nicht in der Textbox angezeigt.

Woran liegt das, und wie kann ich das ändern?
Hier mein Code:

OpenFileDialog openDialog = new OpenFileDialog();

if (openDialog.ShowDialog() == DialogResult.OK)
{
  StreamReader reader = new StreamReader(File.OpenRead(openDialog.FileName));

  string line;
  while ((line = reader.ReadLine()) != null)
  {
    textBox1.AppendText(line + "\r\n");
  }
  reader.Close();
}

Danke.

Gruß,
Tom

1 Antworten zu dieser Frage

  1. Antwort von nach 11 Stunden 0 hilfreich
    Re: Visual C#: Datei öffnen und in Textbox anzeige

    Hi!
    Wenn Umlaute oder Sonderzeichen nicht so angezeigt werden, wie gewohnt, dann liegt das am sogenannten Encoding der Datei.
    Beim Öffnen einer Datei gibt es etliche Methoden, bei denen man das Encoding explizit mit angeben kann.
    Wenn Du daher bspw. schreibst:
    StreamReader reader = new StreamReader(openDialog.FileName, System.Text.Encoding.Default);
    dann sollte es besser funktionieren.

    Gruß,
    Martin

    P.S.: Schau' Dir vielleicht auch mal das "using" Schlüsselwort an. Damit kann man sehr leicht sicherstellen, dass z.B. Streams automatisch immer freigegeben werden, ohne dass man sich groß Gedanken daruber machen muss:
    using (StreamReader reader = new StreamReader(openDialog.FileName, System.Text.Encoding.Default))
    {
    string line;
    while ((line = reader.ReadLine()) != null)
    {
    textBox1.AppendText(line + "\r\n");
    }
    }

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!