Hej Kolla hur många byte filen är på, räkna det istället. Blir lite "skevt" om du har väldigt olika långa rader, men det är till och med egentligen mer "rätt". Ja men jag måste ju först ha ett maxvärde att ladda progressbaren med och Kolla storleken på filen och storleken på datan du har läst. Har för mig att du får ut length med Men va f... Hur vet jag hur många byte jag läst in efter varje rad ? Hur läser du in en rad? Jag läser rad för rad till en sträng med Line Input Oj, var fick jag "vektor" ifrån? Måste tänkt på något annat. Tackar , progressbaren fylldes inte riktigt fullt ut men det är helt godtagbart Räkna också med två tecken varje rad för radslut, dvs. +2 efter raden. Roade mig med att göra ett testprov till ProgressBar PGBar. Funkar jätte bra här hos mig. Hej SvenHur få värden till en progressbar när man läser en textfil rad för rad
Skall läsa en textfil rad för rad och vill ha en progressbar att visa
förloppet. Preblemet är att jag inte vet hur många rader som finns i filen
och vill inte loopa igenom filen en extra gång bara för att räkna raderna
eftersom det skulle ta alldeles för lång tid
Finns det någon som har ett tips.Sv: Hur få värden till en progressbar när man läser en textfil rad för rad
Sv:Hur få värden till en progressbar när man läser en textfil rad för rad
sedan ett värde att uppdatera progressbar.value med allt eftersom jag loopar igenom filenSv: Hur få värden till en progressbar när man läser en textfil rad för rad
Sv:Hur få värden till en progressbar när man läser en textfil rad för rad
open "fil.txt" for input access read as #1
filelength= LOF(1)
Sv: Hur få värden till en progressbar när man läser en textfil rad för rad
Hej Pelle
Förstår inte hur jag skall få maxvärde på progressbaren av detta för att
sedan sätta value efter varje rad jag läst inSv:Hur få värden till en progressbar när man läser en textfil rad för rad
Sätt maxvärde = antalet byte
Håll reda på hur många byte du har läst, sätt det som value.
Om filerna är stora så kan du behöva göra något i stil med att sätta maxvärde = 10000 och sen anpassa value därefter. (Multiplicera med 10000 och dividera med antalet byte)Sv: Hur få värden till en progressbar när man läser en textfil rad för rad
Sv:Hur få värden till en progressbar när man läser en textfil rad för rad
Till en sträng?
Kolla då på hur lång den strängen är.
Ackumulera det i en vektor.Sv: Hur få värden till en progressbar när man läser en textfil rad för rad
skall längden på strängen vara i antal tecken ?
Vad menar du med att ackumulera i en vektor ?
Skriv gärna en kodsnuttSv:Hur få värden till en progressbar när man läser en textfil rad för rad
Du läser in till en sträng, och varje gång gör du:
tot = tot + len(str)Sv: Hur få värden till en progressbar när man läser en textfil rad för rad
Sv:Hur få värden till en progressbar när man läser en textfil rad för rad
Sv: Hur få värden till en progressbar när man läser en textfil rad för rad
Måste vara en häftigt stor testfil.txt om det skall vara någon mening med detta förlopp.
Hos mig sa det bara smack så var det klart.
<code>
Option Explicit
Private Sub Command1_Click()
Dim Fnum As Long, strLine As String
Fnum = FreeFile
PGBar.Max = FileLen("C:\TestFil.txt")
On Error Resume Next
Open "C:\TestFil.txt" For Input As #Fnum
Do Until EOF(Fnum)
Line Input #Fnum, strLine
'Niklas försag plats för experiment
PGBar.Value = PGBar.Value + Len(strLine) + 2
DoEvents
'Do your stuff here
List1.AddItem strLine
Loop
Close #Fnum
End Sub
</code>Sv:Hur få värden till en progressbar när man läser en textfil rad för rad
Ja den är stor 258000 rader och samtidigt skall man bearbeta raderna så det tar lite tid