C# - Anfängerfrage zu einem Codeschnipsel


svenk2

Grünschnabel
Hallo,

ich habe bisher, wenn ich mal dazu kam, alles mit VB.NET gemacht. Nun möchte ich auf C# umsteigen. Soweit so gut. Da jetzt C# im Allgemeinen aber noch Neuland ist muss ich jetzt mal fragen. Ich möchte eine Textdatei auslesen in der eine ständig variierende Anzahl an Zeilen zu finden ist.In VB.NET habe ich die Auflistung des Inhalts wie folgt bewerkstelligt:



Visual Basic:
            Dim Inhalt As String = String.Empty
            Dim Count As Integer = 0
            For Each Line In IO.File.ReadAllLines(My.Settings.pl_path, System.Text.Encoding.UTF8).Skip(1)
                If String.IsNullOrWhiteSpace(Line) Then Continue For
                Count += 1
                Inhalt &= " " & Count.ToString("00") & " " & Line & Environment.NewLine
            Next
            NextLBL.Text = "Als nächstes:  " & Count.ToString("00") & Environment.NewLine & Environment.NewLine & Inhalt
Dieser hat wunderbar funktioniert. Natürlich funktioniert dieser unter C# nicht mehr. Daher mein Frage. Wie müsste der C# Code aussehen. Habe die ganze Zeit schon einiges probiert, aber nichts war auch nur entfernt mit dem Ergebnis des Code da oben vergleichbar. Wäre für jede Hilfe echt dankbar.

LG
 

Spyke

Premium-User
ungefähr so (Code ist ungetestet)
C#:
string inhalt = string.Empty;
int count = 0;
foreach(string line in IO.File.ReadAllLines(this.Settings.pl_path, System.Text.Encoding.UTF8).Skip(1))
{
    if(string.IsNullOrWhiteSpace(line))
        continue;
    count++; //oder count += 1;
    inhalt += " " + count.ToString("00") + " " + line + Environment.NewLine;
}
NextLBL.Text = "Als nächstes:  " + count.ToString("00") + Environment.NewLine + Environment.NewLine + inhalt;
 

svenk2

Grünschnabel
Hallo,

danke dir. Dann habe ich gestern bei meinem unzähligen Versuchen lediglich das "string" nach foreach ( vergessen. Der Code funktioniert jetzt, musste nur aus IO.FiLe .. System.IO.File.... machen.

Nochmals viele lieben Dank.
 

Neue Beiträge