NAVIGATIE

Freetime overzicht
Zoeken


  RUBRIEKEN

FAQ / Help
Wat mag niet?
WZL Wedstrijden
WZL Chat
WZL Toolbar
WZL Statistieken
WZL leden
WZL shop
E-cards

RSS

Fun-feed
Babe-feed
Stud-feed

Een groot aantal pokerrooms geven de mogelijkheid om poker te spelen op internet en geld te storten via het veilige iDeal betaalsysteem.
Overzicht » Computer » Programmeren » VB.NET=>grote file importeren in richtextbox
Onderaan pagina
ArmandRicard 2.548
wzl-lid
Sinds 14/4/2004
T: 2 R: 72
10/5/2005 - 13:44u | Quote
Ik ben bezig met het schrijven van een klein tooltje om bat's en .sql te maken.

Nu moet ik soms sqlbestanden in een textbox laden die rond de 2mb groot zijn.
Dan wordt de applicatie nogal vervelend traag .

Ik gebruik al een richtextbox, die de snelste blijkt te zijn. En ik laad eerst mijn file in een string en dan pas in de textbox...dat bespaart mij weeral wat tijd blijkbaar.

Maar meer dan 10 seconden moeten wachten eer een file ingeladen is duurt toch nog veel te lang, dus een speedup method is meer dan welkom.

Anybody been there, done that?
ArmandRicard 2.548
wzl-lid
Sinds 14/4/2004
T:2 - R:72
10/5/2005 - 13:45u | Quote
Oplossingen in vb.net weliswaar hé. Met iets anders kan ik nix aanvangen.
Quagmire 3.748
wzl-lid
Sinds 18/11/2003
T:62 - R:1458
10/5/2005 - 14:07u | Quote
Als het in java was zou ik kijken of ge wel een buffered reader gebruikt om uwe file in te lezen.....Aangezien .net principes wel meer dan een beetje overgenomen zijn van java.......bestaat er geen .net equivalent van een buffered reader, of stream?
ArmandRicard 2.548
wzl-lid
Sinds 14/4/2004
T:2 - R:72
10/5/2005 - 14:13u | Quote
in J# bestaat da wel precies maar ik zoek dus echt iets in vb.net hé...maar toch al bedankt voor de reply
Quagmire 3.748
wzl-lid
Sinds 18/11/2003
T:62 - R:1458
10/5/2005 - 15:57u | Quote
als da in J# bestaat moet da in vb.net ook bestaan hoor, alle .net talen gebruiken dezelfde base-class libraries......wat ge in een taal kunt gaat in de andere ook

Laatst aangepast door Quagmire op 10/05/2005 15:57:26u (1x aangepast)
ArmandRicard 2.548
wzl-lid
Sinds 14/4/2004
T:2 - R:72
10/5/2005 - 16:23u | Quote
Dat klinkt inderdaad nog zo onozel niet, ik ga dat is uitzoeken
ArmandRicard 2.548
wzl-lid
Sinds 14/4/2004
T:2 - R:72
11/5/2005 - 10:07u | Quote
Public Sub OpenFile(ByVal path As String, ByVal tb As RichTextBox)
tb.Text = ""
Dim thetext As String

Dim fs As New FileStream(path, FileMode.Open)
'declaring a FileStream and creating a word document file named file with
'access mode of writing
Dim s As New StreamReader(fs)
'creating a new StreamWriter and passing the filestream object fs as argument
s.BaseStream.Seek(0, SeekOrigin.Begin)

While s.Peek <> -1
thetext += s.ReadLine() + vbCrLf
End While
s.Close()
tb.Text = thetext
'closing the file

End Sub

Bovenstaande is dus de code die ik momenteel gebruik om een file in te lezen in een textbox. Zonder bufferedstream dus. Bufferedstream bestaat wel in VB.Net, alleen is het vinden van een voorbeeld die dit implementeert blijkbaar niet zo makkelijk.

Iemand die al eens een bufferedstream heeft geimplementeerd en weet wat er juist moet gebeuren om hem te benutten?

Thx
Phil 2.915
Uberhacker
Sinds 23/2/2003
T:10 - R:484
11/5/2005 - 12:49u | Quote
Ben je zeker dat het niet de omzetting ascii/unicode -> rtf is die je vertraging veroorzaakt ?? Het kan nooit dat een 2mb file 10 seconden nodig heeft om in te laden, zelfs niet in vb. Profile je code eerst eens.

Edit: ik zie dat je daar een String concatinatie doet (+= .. + ..), dit zorgt er (althans in Java) voor dat je voor elke regel een nieuw object moet instantieren - probeer eens te kijken of een StringBuffer (of gelijkend) is. Dit kan een gigantische versnelling betekenen.

Laatst aangepast door Phil op 11/05/2005 12:56:26u (1x aangepast)
ArmandRicard 2.548
wzl-lid
Sinds 14/4/2004
T:2 - R:72
11/5/2005 - 13:30u | Quote
yeeeeeps, yeeps yeeps that's it, met de stringbuilder uit de text class werkt het Thx guys!
Phil 2.915
Uberhacker
Sinds 23/2/2003
T:10 - R:484
11/5/2005 - 16:23u | Quote
np, glad to have been of any assistance.
 
Bovenaan pagina