Toon posts:

Copy con of iets anders?

Pagina: 1
Acties:
  • 60 views sinds 30-01-2008

Verwijderd

Topicstarter
Hallo,

Ik heb al verschillende dingen geprobeerd, maar ik krijg het maar niet voor elkaar elke regel in een txt bestand automatisch op te slaan als een apart bestand.

Bijvoorbeeld:

basis.txt met als inhoud:
Dit is de eerste regel van uitvoerbestand1.txt
Dit is de eerste regel van uitvoerbestand2.txt
Dit is de eerste regel van uitvoerbestand3.txt

Moet opleveren: 3 bestanden, te weten:
uitvoerbestand1.txt met als inhoud:
Dit is de eerste regel van uitvoerbestand1.txt

uitvoerbestand2.txt met als inhoud:
Dit is de eerste regel van uitvoerbestand2.txt

uitvoerbestand1.txt met als inhoud:
Dit is de eerste regel van uitvoerbestand3.txt

Wie weet hoe je dat op kunt lossen met een scriptje (bij voorkeur onder Windows, maar mag evt. ook onder Linux, als het maar werkt)?

Bedankt alvast voor de moeite

  • Croga
  • Registratie: Oktober 2001
  • Laatst online: 18:05

Croga

The Unreasonable Man

Ik zou het in LotusScript in 5 minuutjes voor je maken, maar ik neem niet aan dat je een Lotus Notes client op je PC hebt staan...... ?

Verwijderd

Eitje met Perl. Perl draait ook onder windows maar in de meeste (alle) linux-distributies is het standaard aanwezig.

Verwijderd

Topicstarter
Is die Lotus Client te downloaden (heb kabel) dan is dat geen punt. Van Linux heb ik nog wel een Redhat CD'tje liggen. Dus ook geen punt. Aan een Perl editor is ook nog wel te komen... :)

Zouden jullie een voorbeeld willen geven?

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 18:18
Ook in C++ is dit een paar regels; getline() in een loop, in de loop een filename maken en de ene regel schrijven.

Overigens neigt dit wel naar een scriptrequest

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

je kan (waarschijnlijk) gewoon de WSH gebruiken.

Opslaan als .vbs en dubbelklikken (fouten voorbehouden, het blijft natuurlijk maandagochtend ;))
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
dim oFile, oSrcFile, oDestFile, iCounter, sLine
iCounter = 1

Set oFile = CreateObject("Scripting.FileSystemObject")
Set oSrcFile = oFile.OpenTextFile("c:\basis.txt", 1, false)

While not oSrcFile.AtEndOfStream
    sLine = oSrcFile.ReadLine
    Set oDestFile = oFile.CreateTextFile("c:\uitvoerbestand" & iCounter & ".txt")
    oDestFile.Write sLine
    oDestFile.Close
    Set oDestFile = Nothing
    iCounter = iCounter + 1
Wend

oSrcFile.Close
set oSrcFile = Nothing
Set oFile = Nothing

Today's subliminal thought is:


Verwijderd

Topicstarter
Heb het geprobeerd, ik kreeg een runtime fout:

Script: C:\voorbeeld.vbs
Regel: 4
Teken: 1
Fout: Kan het bestand niet vinden
Code: 800A0035
Bron: Runtimefout Microsoft VBScript

Waar in jouw voorbeeldje voeg je trouwens de regel in, of loopt-ie regel na regel af en wordt elke regel daarna opgeslagen als apart bestandje (nog wel zoveel makkelijker eigenlijk)?

  • MichelVH
  • Registratie: Oktober 2001
  • Laatst online: 01-08 09:33
Waarschijnlijk staat het bestand basis.txt niet in c:\
code:
1
Set oSrcFile = oFile.OpenTextFile("c:\basis.txt", 1, false)

Je moet óf dit regeltje aanpassen óf het bestand naar die locatie verplaatsen.

Don't be afraid of the dark, be afraid of what it hides


Verwijderd

Topicstarter
Cool. 't Werkt :P

Bedankt voor de hulp.

Als ik Sultan was (ben ik niet) kreeg je nu een paleis.

Verwijderd

in quickbasic zou het zoiets worden als dit
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
open "bla.txt" for input as #1
do

   line input #1, a$
   b$ = b$ + 1

   open $b + ".txt" for output as #2
   print #2, a$
   a$ = ""
   close #2

loop until eof(1)
close #1

ofzoiets :)

Verwijderd

Topicstarter
'k wil eigenlijk naar uitvoerbestanden toe met meerdere regels toe. Dat had ik zo gedacht (met als voorbeeld 2 uitvoerbestandjes) met html op te lossen door eerst in 1 regel te zetten:

Basis.txt (eerste versie) inhoud:
Eerste regel
Tweede regel
Derde regel
Vierde regel
Vijfde regel
Zesde regel

Basis.txt (handmatig bijgewerkt naar html) inhoud:
Eerste regel<BR>Tweede regel<BR>Derde regel
Vierde regel<BR>Vijfde regel<BR>Zesde regel

Met gebruik van het vsb script krijg ik dan:

uitvoerbestand1.txt met als inhoud:
Eerste regel<BR>Tweede regel<BR>Derde regel

uitvoerbestand2.txt met als inhoud:
Vierde regel<BR>Vijfde regel<BR>Zesde regel

Daarna in de command line met rename *.txt *.htm alles hernoemen naar HTML files.
Dan van internet een HTML-TXT batch file plukken en de HTML files omzetten naar txt files met meerdere regels (de <BR> tag moet dan vervangen worden door een harde return).

Tikkie omslachtig allemaal, dat wel |:(

Maar dat kan natuurlijk ook veel sneller door het vsb script aan te passen en per 2 (of meer, wat je wilt) regels naar een uitvoerbestandx.txt weg te schrijven. Ik heb het vsb bestand van Annie eerst zelf proberen aan te passen door hier en daar wat te wijzigen, maar ik kreeg het niet voor elkaar :(

  • Nappa
  • Registratie: Februari 2001
  • Laatst online: 16:22

Nappa

The Barbaric Saiya-jin!

Op maandag 24 juni 2002 12:49 schreef ivokremer het volgende:
'k wil eigenlijk naar uitvoerbestanden toe met meerdere regels toe. Dat had ik zo gedacht (met als voorbeeld 2 uitvoerbestandjes) met html op te lossen door eerst in 1 regel te zetten:
Maar dat kan natuurlijk ook veel sneller door het vsb script aan te passen en per 2 (of meer, wat je wilt) regels naar een uitvoerbestandx.txt weg te schrijven. Ik heb het vsb bestand van Annie eerst zelf proberen aan te passen door hier en daar wat te wijzigen, maar ik kreeg het niet voor elkaar :(
Hmmm. Misschien kun je dan beter eerst wat beter de code bestuderen...
code:
1
2
3
4
5
6
7
8
9
10
11
12
While not oSrcFile.AtEndOfStream
    sLine = oSrcFile.ReadLine
    Set oDestFile = oFile.CreateTextFile("c:\uitvoerbestand" & iCounter & ".txt")
    oDestFile.Write sLine
    oDestFile.Close
    Set oDestFile = Nothing
    iCounter = iCounter + 1
Wend

oSrcFile.Close
set oSrcFile = Nothing
Set oFile = Nothing

Om dat maar even vrij te vertalen:
code:
1
2
3
4
5
Zolang het einde van de file nog niet in zicht is:
  lees een REGEL
  OPEN een UITVOERFILE
  schrijf REGEL naar UITVOERFILE
  SLUIT de UITVOERFILE

Dat moet toch niet te moeilijk zijn om om te toveren naar de code die jij wilt hebben?!?! :?

Alles wat ik zeg kan en zal tegen u gebruikt worden
Scream! Suffer! Panic! | Dark-future Dawnbringer | Unofficial Mordor community


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03-09 13:30

.oisyn

Moderator Devschuur®

Demotivational Speaker

sorry, maar dit is natuurlijk gewoon een scriptrequest.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1

Dit topic is gesloten.