Procedure: Een kopie van een bestand maken in dezelfde map in Visual Basic
Gebruik de My.Computer.FileSystem.CopyFile
methode om bestanden te kopiëren. Met de parameters kunt u bestaande bestanden overschrijven, de naam van het bestand wijzigen, de voortgang van de bewerking weergeven en de gebruiker toestaan de bewerking te annuleren.
Een kopie van een bestand in dezelfde map maken
Gebruik de
CopyFile
methode, waarbij u het doelbestand en de locatie opgeeft. In het volgende voorbeeld wordt een kopie vantest.txt
de aangeroepen naam gemaakttest2.txt
.My.Computer.FileSystem.CopyFile("C:\TestFolder\test.txt", "C:\TestFolder\test2.txt", Microsoft.VisualBasic.FileIO.UIOption.OnlyErrorDialogs, FileIO.UICancelOption.DoNothing)
Als u een kopie van een bestand in dezelfde map wilt maken, overschrijft u bestaande bestanden
Gebruik de
CopyFile
methode, geef het doelbestand en de locatie op en stel deze inoverwrite
opTrue
. In het volgende voorbeeld wordt een kopie vantest.txt
aangeroepentest2.txt
bestanden gemaakt en overschreven door die naam.My.Computer.FileSystem.CopyFile("C:\TestFolder\test.txt", "C:\TestFolder\test2.txt", True)
Robuuste programmering
De volgende voorwaarden kunnen ertoe leiden dat er een uitzondering wordt gegenereerd:
Het pad is om een van de volgende redenen niet geldig: het is een tekenreeks met lengte nul, bevat alleen witruimte, het bevat ongeldige tekens of het is een apparaatpad (begint met \\.\) (ArgumentException).
Het systeem kan het absolute pad (ArgumentException) niet ophalen.
Het pad is ongeldig omdat het (ArgumentNullException) is
Nothing
.Het bronbestand is ongeldig of bestaat niet (FileNotFoundException).
Het gecombineerde pad verwijst naar een bestaande map (IOException).
Het doelbestand bestaat en
overwrite
is ingesteld opFalse
(IOException).De gebruiker heeft onvoldoende machtigingen voor toegang tot het bestand (IOException).
Een bestand in de doelmap met dezelfde naam wordt gebruikt (IOException).
Een bestands- of mapnaam in het pad bevat een dubbele punt (:) of heeft een ongeldige indeling (NotSupportedException).
ShowUI
is ingesteld opTrue
, is ingesteld opThrowException
enonUserCancel
de gebruiker heeft de bewerking geannuleerd (OperationCanceledException).ShowUI
is ingesteld opTrue
,onUserCancel
is ingesteld opThrowException
en er treedt een niet-opgegeven I/O-fout op (OperationCanceledException).Het pad overschrijdt de door het systeem gedefinieerde maximumlengte (PathTooLongException).
De gebruiker heeft geen vereiste machtiging (UnauthorizedAccessException).
De gebruiker beschikt niet over de benodigde machtigingen om het pad (SecurityException) weer te geven.