Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Sao chép file trong C#

Phương thức File.Copy() trong namespace System.IO cho phép tạo bản sao của một file hiện có.

Cú pháp

File.Copy(string sourceFileName, string destFileName);
File.Copy(string sourceFileName, string destFileName, bool overwrite);

Ví dụ hoàn chỉnh

using System;
using System.IO;

public class Program
{
    public static void Main()
    {
        string sourcePath = @"D:\one.txt";
        string destPath = @"D:\two.txt";
        
        // Sao chép, ghi đè nếu file đích đã tồn tại
        File.Copy(sourcePath, destPath, true);
        Console.WriteLine("Đã sao chép file thành công.");
    }
}

Tham số

Tham sốMô tả
sourceFileNameĐường dẫn file nguồn
destFileNameĐường dẫn file đích
overwritetrue: ghi đè nếu đã tồn tại; false (mặc định): ném exception nếu tồn tại

Ngoại lệ thường gặp

  • FileNotFoundException: File nguồn không tồn tại
  • IOException: File đích đã tồn tại và overwrite = false (mặc định)
  • UnauthorizedAccessException: Không đủ quyền
  • ArgumentException: Đường dẫn không hợp lệ

Lưu ý

  • Phương thức này sao chép cả nội dung và metadata (thời gian tạo, sửa đổi, thuộc tính file).
  • Để di chuyển file (cắt + dán), dùng File.Move().
  • Đối với file lớn, cân nhắc dùng FileStream với buffer để có thanh tiến trình.