Toon posts:

[VB] Regel verwijderen in tekstbestand

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik kamp met het volgende probleem.

Ik gebruik een tekst bestand, om een aantal gegevens op te halen. Deze gegevens insert ik dan weer in een database. Ik ben gedwongen, om altijd dit tekst bestand te gebruiken en een andere applicatie update dit tekstbestand 1 keer in de zoveel tijd. Wat ik uiteraard niet wil, is dat er dubbele gevens in m'n DBtje komen dus moet ik de gegevens verwijderen, die ik in de DB heb gestopt. Heeft iemand enig idee hoe ik regels uit een tekst bestand kan verwijderen? m'n tekst bestand ziet er als volgt uit:

code:
1
2
3
4
5
6
7
8
9
10
11
15-6-02 9:25    13 Kassa 1.4.3. 057620 geldig Emmel 735
15-6-02 9:29    21 Uitklokken 1.5.6.    057656 geldig Brandenburg 616
15-6-02 9:29    21 Uitklokken 1.5.6.    098997 geldig Rijfers
15-6-02 9:32    21 Uitklokken 1.5.6.    050913 geldig Hendriks 692
15-6-02 9:34    3 Vlees 1.5.4.  120595 geldig Berkien
15-6-02 9:34    3 Vlees 1.5.4.  057631 geldig Spiljard
15-6-02 9:40    21 Uitklokken 1.5.6.    057660 geldig de Rijk
15-6-02 9:47    11 Semi-vers 1.5.0. 095279 geldig Brand
15-6-02 9:47    8 Brood/Bake-off 1.5.7. 098997 geldig Rijfers
15-6-02 9:47    13 Kassa 1.4.3. 050913 geldig Hendriks 692
15-6-02 9:52    21 Uitklokken 1.5.6.    050957 geldig Lourens 750

  • whoami
  • Registratie: December 2000
  • Laatst online: 11:48
Wat heb je zelf al geprobeerd?

Je kunt het tekstbestand inlezen, en dan de rijen inserten in de db. Dan schrijf je het bestand opnieuw en laat je de rijen die je in de db hebt ge-insert weg. (maw, die schrijf je niet opnieuw naar het bestand).

https://fgheysels.github.io/


Verwijderd

Topicstarter
Ik heb geprobeerd een lege rij te schrijven. Alleen ben ik er achter, dat hij dan altijd naar het einde van het tekst bestand springt en dan gaat schrijven. Wat ik dus eigenlijk wil, is dat ik kan aangeven op welke lijn ik ga schrijven.

code:
1
2
3
    Open Path For Append Shared As #schrijffile
    Print #schrijffile, test
    Close #schrijffile

  • whoami
  • Registratie: December 2000
  • Laatst online: 11:48
Probeer het eens te doen zoals ik zeg:
Het bestand inlezen in een buffer.
Dan ga je dat buffer gebruiken om de rijen te inserten in de db.
Als je een rij geinsert hebt, verwijder je ze uit het buffer.
Als de verwerking gedaan is, schrijf je de resterende lijnen opnieuw naar het tekstbestand (door de goede parameters op te geven kan je er wel voor zorgen dat het bestaande bestand overschreven wordt).

https://fgheysels.github.io/


Verwijderd

Probeer het filesystemobject eens...
Kijk op http://www.vbwm.com/art_1999/whatsnew/filesys.asp

Verwijderd

gebruik een ini file hiervoor?

Verwijderd

Topicstarter
Hoe bedoel je, "gebruik een ini file hiervoor"
En is het niet mogelijk om aan te geven op welke line je wilt schrijven?
Volgens mij moet dit wel kunnen.
je kunt namelijk ook aangeven van welke line je wilt lezen. Nu lees ik namelijk ook line voor line

  • Peetman
  • Registratie: Oktober 2001
  • Laatst online: 01-09 23:34

Peetman

Tjah....

De voor de hand liggende methode is, om de file regel voor regel te kopieren naar een tijdelijk bestand, behalve de regels die je niet meer wilt hebben. Delete daarna het origineel en hernoem het tijdelijke bestand naar de naam van het originele bestand

Verwijderd

Topicstarter
zo heb ik het idd nu ook al gedaan
wel toevallig dat je met de exacte zelfde oplossing komt
bedankt allen :)
Pagina: 1