Gå til innhold

VB 6.0 skrive tekst til fil.


Anbefalte innlegg


'Åpne fil
Open "E:\Hoved.dat" For Input As #1
Input #1, lineoftext$
Text1.Text = lineoftext$
Close #1

'Skriv til fil
Open "E:\Hoved.dat" For Output As #1
Write #1, Text1
Close #1

 

Det er koden min, men denne skriver til det som er i tekst boksen på øverste linje.

Hvordan gjør jeg at den kan skrive til linje 1, og 2 osv?

 

Og at jeg kan hente ut data fra feks linje 2 eller 3?

Lenke til kommentar
Videoannonse
Annonse

Med: Open "E:\Hoved.dat" For Output As #1 blir den gamle fila overskrevet, men med: Open "E:\Hoved.dat" For Append As #1, så kommer det som skrives bak det som er fra før i fila.

 

Bruk en do-loop som går fra 1 og til n og sett ved en tekstboks n til å være lik 3 (eller et annet tall). Inne i loop'en leser du inn en linje fra fila i tekstboksa, og når loop'en har gått 3 ganger så har du i tekstboksa linje nr. 3. ;)

Endret av backup
Lenke til kommentar

Eventuelt kan du benytte binarisk åpning av filene, dersom de mot formodning skulle være nokså store:

 

' Benyttet for å øke ytelsen av strengallokering

Private Declare Function SysAllocStringByteLen Lib "oleaut32" (ByVal olestr As Long, ByVal BLen As Long) As String

 

Public Function LoadFile(sFile As String) As String

 

    Dim Free As Long

   

    ' Finn et ledig filnummer

    Free = FreeFile

   

    ' Åpne filen binarisk

    Open sFile For Binary As #Free

   

        ' Alloker buffer til å passe mengden data

        LoadFile = SysAllocStringByteLen(0&, LOF(Free))

   

        ' Last inn all data

        Get #Free, , LoadFile

   

    ' Lukk fil

    Close #Free

 

End Function

 

Public Sub SaveFile(sFile As String, sData As String)

 

    Dim Free As Long

   

    ' Finn et ledig filnummer

    Free = FreeFile

   

    ' Åpne filen binarisk

    Open sFile For Binary As #Free

 

        ' Skriv all data

        Get #Free, , sData

   

    ' Lukk fil

    Close #Free

 

End Sub

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...