Tex_Murphy
Mitglied
Ahem.. nein. Muss ich das? Ich meine, eigentlich ist doch stpkt ein Zahlenwert, den ich lediglich - da ich ihn in einer TextBox ausgebe, als string ausgeben muss.cosmochaosmaker hat gesagt.:Du initialisierst stpkt aber wenigstens mit string.Empty?
Sorry, wenn ich hier Stümper-Fehler begehe, aber wie gesagt, ich bin Umsteiger... Oh, achja, ich hänge mal den Code an:
C#:
private void button3_Click(object sender, System.EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string zeile;
string gesamttext = " ";
int ausgabe;
int ausgabe2;
double stpkt;
double pnr;
int code;
double ih;
double rh;
double hz;
double vz;
double ss;
StreamReader datei = new StreamReader(openFileDialog1.FileName);
zeile = (datei.ReadLine()); // einzelne Zeile einlesen
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));
rh = Convert.ToDouble (zeile.Substring(72,8))/1000;
ih = Convert.ToDouble (zeile.Substring(88,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(39,8))/100000;
ss = Convert.ToDouble (zeile.Substring(56,8))/1000;
gesamttext += stpkt.ToString()+" " + ih.ToString()+" " + rh.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;
}
}
}
}
Zuletzt bearbeitet: