Tex_Murphy
Mitglied
Hallo, ich bin Umsteiger von VB 5 und C' - Anfänger.
Ich habe folgendes Problem: Ich lese eine Textdatei aus und überprüfe das erste Zeichen in der Zeile. Abhängig von diesem Zeichen sollen aus der Zeile unterschiedliche Werte in unterschiedliche Variablen eingelesen werden.
Die Variablen werden korrekt ausgelesen, das habe ich getestet. Leider geht der Wert der Variablen anscheinend verloren, sobald ich eine neue Zeile einlese (der Wert wird nicht überschrieben, er ist einfach nicht mehr da)
In der Zeile 22 bekomme ich für stpkt und ih einen "Use of unassigned local variable" - Fehler.
Wie kriege ich die Werte der Variablen erhalten?
PS: Danke für die Hilfe bei der Darstellung.
Ich habe folgendes Problem: Ich lese eine Textdatei aus und überprüfe das erste Zeichen in der Zeile. Abhängig von diesem Zeichen sollen aus der Zeile unterschiedliche Werte in unterschiedliche Variablen eingelesen werden.
Die Variablen werden korrekt ausgelesen, das habe ich getestet. Leider geht der Wert der Variablen anscheinend verloren, sobald ich eine neue Zeile einlese (der Wert wird nicht überschrieben, er ist einfach nicht mehr da)
C#:
while (zeile != null)
{
ausgabe = Convert.ToInt32(zeile.Substring(0,1));
gesamttext += ausgabe.ToString() + "\r" + "\n";
switch (ausgabe)
{
case 1: // Zeile ist eine Start- oder Messzeile
ausgabe2 = Convert.ToInt32(zeile.Substring(16,1));
switch (ausgabe2)
{
case 8: //Zeile ist Startzeile
stpkt = Convert.ToDouble (zeile.Substring(8,8));
ih = Convert.ToDouble (zeile.Substring(88,8))/1000;
rh = Convert.ToDouble (zeile.Substring(72,8))/1000;
break;
case 2: // Zeile ist Messzeile
pnr =Convert.ToDouble (zeile.Substring(8,8));
hz = Convert.ToDouble (zeile.Substring(23,8))/100000;
vz = Convert.ToDouble (zeile.Substring(40,8))/100000;
ss = Convert.ToDouble (zeile.Substring(56,8))/1000;
// die nächste Zeile war rot markiert :)
gesamttext += stpkt.ToString()+" " + ih.ToString()+" " + hz.ToString()+" " + vz.ToString() +" "+ ss.ToString() +" "+"\r" + "\n";
break;
}
break;
case 4://Zeile ist Codezeile
code = Convert.ToInt32 (zeile.Substring(8,8));
break;
}
zeile = (datei.ReadLine()); // einzelne Zeile einlesen
}
datei.Close();
textBox1.Text = gesamttext;
Wie kriege ich die Werte der Variablen erhalten?
PS: Danke für die Hilfe bei der Darstellung.
Zuletzt bearbeitet: