Avatar billede cherok Nybegynder
21. februar 2002 - 23:49 Der er 1 kommentar og
2 løsninger

Read/Write/delete

Jeg er en absolut nybegynder indenfor VB, men er lidt i tidsnød... Kan I hjælpe mig med følgende:

Jeg har brug for at åbne op til 20 eksisterende ascii-filer (f.eks. txt-filer), læse OG slette et brugerdefineret antal records, tilføje noget mere tekst til hver record (baseret på hvilken fil de kommer fra) OG derefter skrive de nye "udvidede" records til én ny samlet fil.
Derefter skal den nye fil sorteres tilfældigt (random) så records'ene kommer i en tilfældig rækkefølge.

Jeg forventer selvfølgelig ikke at du/I skriver koden for mig - jeg vil bare gerne have nogle hints om hvilke kommandoer (hvad de hedder i VB) jeg kan bruge (alså write, read, append, loop, etc.) og en idé om hvordan jeg kommer hurtigt igang.
Igen... jeg har ikke tid til at pløje manualen igennem, så hvis du/I kan hjælpe mig er der 200 point...

Please... help me!
Cherok
Avatar billede jesperthomsen Nybegynder
22. februar 2002 - 08:25 #1
Den nemmeste form for filbehandling i VB efter min mening er via FileSystemObject (FSO) som blandt andet giver adgang til objektet TextStream der er tekstfiler. Samtidig kan du bruge til at gennemse biblioteker og mange andre snedige ting.

FSO er ikke umiddelbart tilgængelig - for at få fat i den skal du ind under Project | References og krydse af i Microsoft Scripting Runtime.

Vær opmærksom på at du KUN kan åbne textstreams via FSO-metoden OpenTextFile.
Dim fso As FileSystemObject
Dim file As TextStream

  Set file = fso.OpenTextFile("C:\Autoexec.bat", ForWriting)

Metoderne på TextStream er ret nemme at have med at gøre. Du kan sikkert se det bare du får fat i en fil.
Avatar billede skumbaq Nybegynder
22. februar 2002 - 11:01 #2
Her er også en løsning


Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8
Dim fso As Object

Private Sub CommandButton1_Click()

' skriv til en fil
Set fso = CreateObject("scripting.filesystemobject")
Set s = fso.OpenTextFile("c:\fso.txt", ForWriting, True)

s.Writeline "Tekst"

s.Close

' skriver mere til en fil

Set s = fso.OpenTextFile("c:\fso.txt", ForAppending, True)

s.Writeline "Mere Tekst"

s.Close

' læser det hele

Set l = fso.OpenTextFile("c:\fso.txt", 1, True)
MsgBox l.readall
l.Close

End Sub
Avatar billede cherok Nybegynder
23. februar 2002 - 16:58 #3
I hjalp mig (delvist) begge 2, så der er points til jer begge. Tak.
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