Kode til at kopiere

Tags:    delphi

<< < 123 > >>
Findes der en kode til at kopiere en fil til et andet sted??
Mvh.
Rune Jensen



21 svar postet i denne tråd vises herunder
5 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Findes der en kode til at kopiere en fil til et andet sted??
Mvh.
Rune Jensen


system ("cp filnavn.fil mappe/filnavn.fil2");


--
Ronni Egeriis - squirrel development: http://sqdev.dk/



Ja, der er så også:

copy ("filnavn.fil", "mappe/filnavn.fil");

--
Ronni Egeriis - squirrel development: http://sqdev.dk/

copy() bliver ikke brugt til filer, du skal have fat i copyFile:

Fold kodeboks ind/udKode 


MvH

Stefan Svensson
http://fusket.frac.dk

[Redigeret d. 03/12-03 22:41:19 af Stefan Svensson]



Findes der en kode til at kopiere en fil til et andet sted??
Mvh.
Rune Jensen


I stedet for at bruge Windows API kan du jo også lave din egen funktion ved hjælp af et par filestreams:

<pre>
procedure TForm1.CopyAFile(const fromfile, tofile: string);
var
file1, file2: TFileStream;
begin
file1:=TFileStream.create(fromfile, fmOpenRead or fmShareDenyWrite);
file2:=TFileStream.create(tofile, fmCreate or fmShareExclusive);

file2.CopyFrom(file1, 0);

file1.destroy;
file2.destroy;
end;
</pre>

Så kalder du bare CopyAFile('hej.txt', 'hallo.txt');

Bemærk: Det eksempel er meget simpelt, det tager fx ikke højder for, hvad der sker, hvis fromfile ikke eksisterer, eller hvis tofile allerede eksisterer eller er åben eller lignende.



Ellers kan det være i kan fortælle mig hvad jeg gør fejl i denne kode:
Fold kodeboks ind/udKode 

place er den string hvor stien ligger.


Du må godt nok undskylde men din kode giver ingen mening.
Str() bruges til at formattere en float til en streng. Desuden mangler der et argument i kaldet.

CopyFile api funktionen ser således ud:
Fold kodeboks ind/udKode 


Dvs. du kalder den med eksisterende filnavn, nyt filnavn og en boolean som angiver om funktionen skal fejle, hvis der allerede findes en fil med det nye navn.

Således:
Fold kodeboks ind/udKode 


Hvis du har filnavnene i variabler af typen String, skal de lige typecastes til PChar:

Fold kodeboks ind/udKode 

--
Thomas Due
Software developer
udvikleren.dk - ASP redaktør
tdue@mail.dk

[Redigeret d. 08/01-04 12:43:09 af Thomas Due]



Hehe okay Thomas... Her er ihvertfald den komplette kode:
Fold kodeboks ind/udKode 


Mvh.
Rune Jensen



Begge filnavne skal være komplette dvs. både med sti og filnavn.

CopyFile(); er allerede en funktion så du behøver ikke:

function CopyFile(lpExistingFileName, lpNewFileName: PChar; bFailIfExists: BOOL): BOOL;
begin

end;

Emil Melgaard
- Admin på gruppen Delphi spilprogrammering.
http://www.delphispilprogram.udvikleren.dk

[Redigeret d. 11/01-04 01:10:04 af Emil Melgaard]



Ja, der er så også:

copy ("filnavn.fil", "mappe/filnavn.fil");

--
Ronni Egeriis - squirrel development: http://sqdev.dk/



Så er det nok bedre at bruge de indbyggede funktioner i Windows API'en.
Følgende API kald kopiere en fil: CopyFile, alternativ er MoveFile. Slå dem evt. op i hjælpen.

--
Thomas Due
Software developer
udvikleren.dk - ASP redaktør
tdue@mail.dk

[Redigeret d. 03/12-03 22:20:25 af Thomas Due]



Hvilken ville være bedst at bruge??? Nogen der ved det? Det jeg vil er jeg vil kopiere en fil fra en cd(altså bar fra den samme mappe som det program som kopierer filen) og så over på c drevet og måske lave en ny mappe.
Mvh.
Rune Jensen



Hvilken ville være bedst at bruge??? Nogen der ved det?


Prøv at eksperimenter lidt, og find den metode du synes bedst om.
--
Thomas Due
Software developer
udvikleren.dk - ASP redaktør
tdue@mail.dk



Hehe kunne ikke rigtigt få nogen af dem til at virke... Men det er nok bare mig... Hvis der er nogen der stadig følger med eller et eller andet så ville jeg blive meget glad ´hvis i gad skære det ud i pap hva det er jeg skal gøre... Det jeg helt præcist gerne vil er at kopiere en fil fra samme mappe over i en folder som enten hentes fra edit1.text eller fra en string... Nogen forslag hvordan jeg gør???
Ellers kan det være i kan fortælle mig hvad jeg gør fejl i denne kode:
Fold kodeboks ind/udKode 

place er den string hvor stien ligger.
Mvh.
Rune Jensen



<< < 123 > >>
t