Software > Coding

Dateien Kopieren aus GFA Basic haraus?

(1/4) > >>

simoncam:
Hallo! Fühle mich gerade ein bisschen doof.
Bin ich blind oder gibt es das nicht?:
Ich versuche für mein neues STe Spiel ANARCHO RIDE eine kleine Festplatten Installations-Option zu schreiben – in GFA Basic.
Dazu suche ich ein Datei/Verzeichnis kopier Kommando. Aber ich finde keines in der GFA Referenz. Gibt es das nicht oder bin ich blind? (Umbenennen und Löschen gefunden)
Komisch… hab das noch nie gebraucht und gesucht.
(MD-DOS Äquivalent wäre etwa so was: „copy a:\file.prg c:\ARNARCO\“)
Danke für jede Hilfe!

1ST1:
Ich weiß nicht, ob es dafür eine GEMDOS-Funktion gibt, die du nur aufrufen musst, schau mal ins Profibuch. Ansonsten Quelldatei öffnen, Zieldatei anlegen, Byte-weise lesen und schreiben.

simonsunnyboy:
Nein, es gibt keinen direkten Kopierbefehl für Dateien, Sowas musst du dir mit OPEN/CLOSE/BGET/BPUT und Schleifen über die Dateilänge selbstbauen.

Wenn die Dateien klein sind, kannst du es mit geschicktem BLOAD und BSAVE und einem gemeinsamen Puffer mit Längenangabe auch realisieren.

simoncam:
Alles klar! Danke!

Burkhard Mankel:
Ich habe mir mal eine kurze Copy-Routine mit "a=INP(#1)" und "? CHR$(a)" (innerhalb einer Scheife - zuvor natürlich Dateien zum Lesen und Schreiben öffnen). Der Gegenpart zu "INP" ist allerdings "OUT", aber damit hatte ich immer Schwierigkeiten! So wird Byteweise kopiert! Auch mit Dauerschleifen (DO ... LOOP) und sowas wie "WHILE UNTIL EOF(#1)=FALSE ... WEND" habe ich Schwierigkeiten - ich setze daher eine "FOR ... NEXT" Schleife ein, nachdem ich die Länge der Quelldatei (Desktop "Zeige Info") abgefragt habe!
In etwa könnte das so aussehen:

--- Code: ---cl #1
cl #2
o "I",#1,infile$
o "O",#2,outfile$
f i=1 to {länge infile$}
a=inp(#1)
?#2;chr$(a);
n i
cl 1
cl 2
--- Ende Code ---
(hier die Kürzel, die Du eintippen mußt - probiere es mal aus!

edit: Falls die Zeile mit dm Semikolon hinter "?chr$ #2" zu einer Fehlermeldung führt, versuche es mit einem Komma - ich bin mir da nicht ganz sicher!

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln