• 27.04.2024, 11:08
  • Register
  • Login
  • You are not logged in.

 

Dear visitor, welcome to Aqua Computer Forum. If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

[vb.net] ende einer datei herausfinden [erledigt]

Saturday, April 1st 2006, 6:22pm

lösung weiter unten

moin moin,

weiß jmd, wie ich unter visual basic .net herausfinden kann, wann eine datei eben zuende ist ?

möchte ein file zeile für zeile auslesen (text sowie binär files), dachte da an eine while schleife.. nur wie weiß ich, wann eine datei zuende ist ?
sowas wie while (line <> nothing) funkt nur halb, denn sobald in ner text datei eine zeile blank ist, erkennt er das als datei ende..

messi

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 6:30pm

Quoted from "messi@planung"

moin moin,

weiß jmd, wie ich unter visual basic .net herausfinden kann, wann eine datei eben zuende ist ?

möchte ein file zeile für zeile auslesen (text sowie binär files), dachte da an eine while schleife.. nur wie weiß ich, wann eine datei zuende ist ?
sowas wie while (line <> nothing) funkt nur halb, denn sobald in ner text datei eine zeile blank ist, erkennt er das als datei ende..

messi


ich hab nicht wirklich ahnung von vb, aber früher zu vb6-zeiten ging da so:

do while not eof(1)

wobei "1" die dateinummer ist

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 6:33pm

ich habs nun probiert mit

Source code

1
2
3
Do Until (inputstream1.Peek = -1) Or (inputstream2.Peek = -1)
[...]
Loop


das problem ist, dass das nun bei einer datei klappt, aber bei ner anderen ned..

edit:

Quoted from ".dap"



ich hab nicht wirklich ahnung von vb, aber früher zu vb6-zeiten ging da so:

do while not eof(1)

wobei "1" die dateinummer ist


do while not eof(1)
gibts auch bei vb.net noch.. nur was meinst du mit dateinummer ? ich würd eigentlich gerne den pfad durchgeben, ala c:\test.txt

messi

Azr@el

Full Member

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 8:41pm

.dap's lösung ist vb6.

Eine adäquate .net lösung sähe in etwa so aus, das du deinen StreamReader solange ReadLine durchführen lässt, bis der rückgabe wert der methode Nothing ist.

Kann der Reader also keine weitere zeile mehr lesen, gibt er einfach nichts zurück. Daraus müsste man dann eine schöne Do Until schleife bauen:

Source code

1
2
3
4
5
dim r as string 
Do 
 r= MyStreamreader.readline
 console.writeline(r)
loop until r = nothing
Jabber-ID: |Azrael|@jabber.ccc.org

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 8:51pm

Ihr wollt mir doch nicht erzählen, dass es für VB(.NET) für so rudimentären Kram wie das Lesen von Dateien kein Cookbook-Rezept oder sowas gibt? Steht das in keinem Buch, nirgends im Internet? Sowas sollte (auch) jeder VB-Programmierer wie aus der Pistole geschossen sofort hintippen können.

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 10:52pm

Quoted from "Azr@el"

.dap's lösung ist vb6.

Eine adäquate .net lösung sähe in etwa so aus, das du deinen StreamReader solange ReadLine durchführen lässt, bis der rückgabe wert der methode Nothing ist.

Kann der Reader also keine weitere zeile mehr lesen, gibt er einfach nichts zurück. Daraus müsste man dann eine schöne Do Until schleife bauen:

Source code

1
2
3
4
5
dim r as string 
Do 
 r= MyStreamreader.readline
 console.writeline(r)
loop until r = nothing


genau das hab ich drin azrael.. das problem ist nur (wie oben auch beschrieben) sobald eine zeile leer ist beendet er das ganze, auch wenns zbsp in nem text nur ne leerzeile ist.

edit:
habs nu rausgefunden, funkt am besten mit:

Source code

1
2
3
Do Until (inputstream1.Peek = -1)
[...]
Loop

da ich zwei files hatte, wo der loop gleichzeitig laufen musste hatte ich ausversehen ein OR anstelle eines AND gebraucht, nun klappt es wunderbarst.

messi

Azr@el

Full Member

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 11:02pm

Oh, verzeihung, mein fehler

Source code

1
2
3
4
5
dim r as string  
Do  
 r= MyStreamreader.readline 
 console.writeline(r) 
loop until r IS nothing


@Y0Gi: Extremst sinniger post...
Jabber-ID: |Azrael|@jabber.ccc.org

Re: [vb.net] wie ende einer datei herausfinden ?

Saturday, April 1st 2006, 11:05pm

siehe meinen edited post oben, azrael

endgültig siehts bei mir so aus:

Source code

1
2
3
4
5
6
7
8
9
10
Do Until (inputstream1.Peek = -1) And (inputstream2.Peek = -1)
                If line1 = line2 Then
                    line1 = inputstream1.ReadLine
                    line2 = inputstream2.ReadLine
                ElseIf line1 <> line2 Then
                    identiek = identiek + 1
                    line1 = inputstream1.ReadLine
                    line2 = inputstream2.ReadLine
                End If
            Loop



messi

Re: [vb.net] ende einer datei herausfinden [erledi

Saturday, April 1st 2006, 11:15pm

http://msdn2.microsoft.com/en-US/library…x8w(VS.80).aspx
http://visualbasic.ittoolbox.com/documents/popular-q-and-a/reading-a-file-in-visual-basic-2847
http://www.vbwm.com/articles/builder/viewer.asp?ArticleID=15
http://www.other-space.com/vb/part2/files.html
http://www.codecomments.com/archive293-2006-2-814071.html

Re: [vb.net] ende einer datei herausfinden [erledi

Sunday, April 2nd 2006, 11:50am

darf man fragen, nachwas du gegoogled hast `? ich hab solche ergebnisse nicht gefunden :(

messi

Re: [vb.net] ende einer datei herausfinden [erledi

Sunday, April 2nd 2006, 2:45pm

"visual basic" read file (multiple)

Azr@el

Full Member

Re: [vb.net] ende einer datei herausfinden [erledi

Sunday, April 2nd 2006, 2:48pm

nimm meinen letzten code, der ist schöner :)

ich hatte deinen post schon gelesen, keine sorge, und daraufhin meinen code berichtigt.
Jabber-ID: |Azrael|@jabber.ccc.org

Re: [vb.net] ende einer datei herausfinden [erledi

Sunday, April 2nd 2006, 3:34pm

Quoted from "Azr@el"

nimm meinen letzten code, der ist schöner :)

ich hatte deinen post schon gelesen, keine sorge, und daraufhin meinen code berichtigt.


sry, aber ich glaub immer noch nid dass dein code stimmt.. weil sobald in ner txt file zbsp ne leerzeile is, steigt den code doch direkt aus ?

deine lösung klappt doch.. ist sogar noch viel besser als das mit dem peek, weil peek aussteigt, wenn die datei nur eine zeile beinhaltet.

wo besteht denn der unterschied zwischen IS und = ?

messi