Entwickler-Ecke

WinForms - Datei Einlesen


basti2005 - Sa 04.09.10 19:28
Titel: Datei Einlesen
Wie kann ich unter VS 2010 C#
eine Datei einlesen.


Möchte folgendes umsetzen :

Möchte aus einer .txt (oder halt eine die sich besser eignet) den Text zeilenweise auslesen in verschiedene Textboxen einlesen mit denen ich dann weiterarbeiten kann.

vor dem Einlesen soll geprüft werden ob die Datei Existiert und eventuell angelegt werden.

Kann mir da jmd helfen.


CSMN - Sa 04.09.10 20:23

user profile iconbasti2005 hat folgendes geschrieben Zum zitierten Posting springen:

Möchte aus einer .txt (oder halt eine die sich besser eignet)
den Text zeilenweise auslesen


das machst du mit dem System.IO.StreamReader

C#-Quelltext
1:
2:
StreamReader strRe = new StreamReader("PfadDerDatei");
strRe.ReadLine();


strRe.Readline(); musst du natürlich einen string array
zuweisen und das ganze in einer schleife laufen lassen.

user profile iconbasti2005 hat folgendes geschrieben Zum zitierten Posting springen:

in verschiedene Textboxen einlesen mit denen ich dann weiterarbeiten kann.


Die ausgelesenen strings übernimmst Du in die
TextBoxen durch zuweisen auf die Eigenschaft Text.
Wobei n der gewünschte Index ist.

C#-Quelltext
1:
 textBox1.Text= textArray[n];                    



user profile iconbasti2005 hat folgendes geschrieben Zum zitierten Posting springen:

vor dem Einlesen soll geprüft werden ob die Datei Existiert und eventuell angelegt werden.


mit File.Exists("PfadDerDatei"); überprüfst du ob
die Datei existiert - liefert dir einen boolschen
wert zurück - also verwendest du einen if-anweisung.
im else-Zweig kannst du dann entweder mit File.Create();
oder mit dem StreamWriter eine Datei anlegen.

StreamReader und StreamWriter musst du nach der Verwendung
wieder schließen zb. strRe.Close();


basti2005 - Sa 04.09.10 21:03

Kannst du mir nen Beispielprojekt zeigen oder fertigmachen und hochladen ?


Christian S. - Sa 04.09.10 22:18

Wenn Du wirklich eine komplette Datei einlesen willst, kannst Du auch einfach File.ReadAllLines benutzen. Das gibt direkt die komplette Datei als String-Array zurück.


user profile iconbasti2005 hat folgendes geschrieben Zum zitierten Posting springen:
Kannst du mir nen Beispielprojekt zeigen oder fertigmachen und hochladen ?
Versuch es mit den gegebenen Tipps doch erstmal selber, da lernst Du garantiert mehr bei :-)


basti2005 - Mo 06.09.10 22:03

Ich brauch umbeding ein Bespiel, weil ich überhaupt kein ansatz hin bekomme.


Christian S. - Mo 06.09.10 22:05

Zeig doch mal, was Du versucht hast. Da kann man bestimmt drauf aufbauen :-)


basti2005 - Mo 06.09.10 23:05

das ist alles was ich habe:

StreamReader objReader = new StreamReader("c:\\text.txt")

Habe überhaupt keine Ahnung.
Außerdem wenn ich ein Vernünftiges Beispiel habe kann ich mir das am besten ins Hirn hauen.


Th69 - Di 07.09.10 09:55

Wie hast du denn bisher C# gelernt? Das Arbeiten mit Dateien und Streams sollte eigentlich in jedem Buch erklärt sein, ansonsten s. z.B. http://openbook.galileocomputing.de/visual_csharp/visual_csharp_10_001.htm#mj4edbe59c689dd28c03022b9c11a1b04b

Und auch in der MSDN gibt es meistens entsprechende Beispiele, z.B. zu der schon erwähnten File.ReadAllLines-Methode: http://msdn.microsoft.com/en-us/library/s2tte0y1.aspx