Avatar billede madsling Nybegynder
07. juni 2004 - 15:28 Der er 5 kommentarer og
1 løsning

Læs/skriv til en fil

Hvad er syntaxen for at læse en tekst fil og for at skrive til en tekst fil?
Avatar billede jakobdo Ekspert
07. juni 2004 - 15:40 #1
Avatar billede sjh Nybegynder
07. juni 2004 - 17:23 #2
ellers kan du gøre det sådan:


'---------------------------------- Form1 ----------------------------------
Option Explicit

Private Sub Form_Load()
  Call SaveFile("C:\Test.txt", "Her er noget tekst.. " & Now)

  Text1.Text = LoadFile("C:\Test.txt")
End Sub

Public Function LoadFile(ByVal strFile As String) As String
Dim intFree As Integer
Dim strSpace As String
  intFree = FreeFile
  Open strFile For Binary Access Read As #intFree
    strSpace = Space$(LOF(intFree))
    Get #intFree, 1, strSpace
  Close #intFree
  LoadFile = strSpace
End Function

Public Sub SaveFile(ByVal strFile As String, ByVal strData As String)
Dim intFree As Integer
  intFree = FreeFile
  Open strFile For Binary Access Write As #intFree
    Put #intFree, 1, strData
  Close #intFree
End Sub
'---------------------------------- Form1 ----------------------------------
Avatar billede martin_moth Mester
07. juni 2004 - 21:25 #3
Bemærk, at shj bruger binary access.

En helt almindelig måde at læse/skrive til en textfil kan du se her

Du kan læse på følgende måde:

  Filnummer = FreeFile
  Open "C:\Fil.txt" For Input As #Filnummer
  Line Input #Filnummer, MinString1 'Putter 1. linie ind i MinString1
  Line Input #Filnummer, MinString2 'Putter 2. linie ind i MinString2
  Close #Filnummer

Og skrive på følgende måde
  Filnummer = FreeFile
  Open "C:\Fil.txt" For Output As #Filnummer
  Print #Filnummer, Minstring1 'Skriver indholdet af MinString1 til linie 1
  Print #Filnummer, MinString2 'Skriver indholdet af MinString1 til linie 2
  Close #Filnummer

Hvis du åbner en fil for Output, bliver evt. indhold SLETTET før du skriver det nye - det svarer til at oprette en ny fil, der overskriver en evt. eksisterende af samme navn. For at undgå dette kan du åbne med Append. Læs mere i hjælpen, på msdn eller søg her på eksperten - der står masser om læsning og skrivning til filer
PS: Der er en søgefunktion, der kunne du selv finde ovenstående :o)
Avatar billede martin_moth Mester
07. juni 2004 - 21:25 #4
shj = sjh :o)
Avatar billede altschuler Nybegynder
08. juni 2004 - 13:29 #5
Jeg plejer da bare at bruge:

'Her åbnes filen
FileOpen("C:\test.txt")
'Her skrives første linie til filen
WriteLine("Test linie 1")
'Og her kommer så anden linie
WriteLine("Test linie 2")
'Og så skal filen lige lukkes
FileClose()

Det synes jeg er den nemmeste måde!
Avatar billede n30thaone Nybegynder
11. juni 2004 - 16:16 #6
Jeg vil anbefale at lave et sæt public functions til de her ting, som returnerer en boolean værdi baseret på om det er lykkedes eller ej(det er så en string ved openfile, da den gerne skulle returnere fil data)

Public Function OpenFile(vars) As Boolean

Public Function SaveFile(vars) As String
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester