Delen via


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 van test.txt de aangeroepen naam gemaakt test2.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 in overwrite op True. In het volgende voorbeeld wordt een kopie van test.txt aangeroepen test2.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 op False (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).

  • ShowUIis ingesteld op True, is ingesteld op ThrowExceptionen onUserCancel de gebruiker heeft de bewerking geannuleerd (OperationCanceledException).

  • ShowUI is ingesteld op True, onUserCancel is ingesteld op ThrowExceptionen 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.

Zie ook