将文件复制到指定路径[C# 文件操作]

来源:互联网 发布:linux gcc编辑器 编辑:程序博客网 时间:2024/05/10 03:50

将现有文件复制到新文件,不允许改写现有文件。[C#] public FileInfo CopyTo(string);

将现有文件复制到新文件,允许改写现有文件。[C#] public FileInfo CopyTo(string, bool);
[C#]  将文件复制到指定路径,允许改写同名的目标文件 COPY
using System;
using System.IO;

class Test
{
    public static void Main()
    {
        string path = @"c:/temp/MyTest.txt";
        string path2 = path + "temp";

        try
        {
            // Create the file and clean up handles.
            using (FileStream fs = File.Create(path)) {}

            // Ensure that the target does not exist.
            File.Delete(path2);

            // Copy the file.
            File.Copy(path, path2);
            Console.WriteLine("{0} copied to {1}", path, path2);

            // Try to copy the same file again, which should succeed.
            File.Copy(path, path2, true);
            Console.WriteLine("The second Copy operation succeeded, which was expected.");
        }

        catch
        {
            Console.WriteLine("Double copy is not allowed, which was not expected.");
        }
    }
}
[C#]  COPY TO
using System;
using System.IO;

class Test
{
        public static void Main()
    {
        string path = @"c:/temp/MyTest.txt";
        string path2 = @"c:/temp/MyTest.txt" + "temp";
        FileInfo fi1 = new FileInfo(path);
        FileInfo fi2 = new FileInfo(path2);

        try
        {
            // Create the file and clean up handles.
            using (FileStream fs = fi1.Create()) {}

            //Ensure that the target does not exist.
            fi2.Delete();

            //Copy the file.
            fi1.CopyTo(path2);
            Console.WriteLine("{0} was copied to {1}.", path, path2);

            //Try to copy it again, which should succeed.
            fi1.CopyTo(path2, true);

            Console.WriteLine("The second Copy operation succeeded, which is expected.");

        }
        catch
        {
            Console.WriteLine("Double copying was not allowed, which is not expected.");
        }
    }
}




若要执行此操作...请参见本主题中的示例...
创建文本文件。向文件写入文本
写入文本文件。向文件写入文本
读取文本文件。从文件读取文本
向文件中追加文本。打开并附加到日志文件

File.AppendText

FileInfo.AppendText

重命名或移动文件。File.Move

FileInfo.MoveTo

删除文件。File.Delete

FileInfo.Delete

复制文件。File.Copy

FileInfo.CopyTo

获取文件大小。FileInfo.Length
获取文件属性。File.GetAttributes
设置文件属性。File.SetAttributes
确定文件是否存在。File.Exists
读取二进制文件。对刚创建的数据文件进行读取和写入
写入二进制文件。对刚创建的数据文件进行读取和写入
检索文件扩展名。Path.GetExtension
检索文件的完全限定路径。Path.GetFullPath
检索路径中的文件名和扩展名。Path.GetFileName
更改文件扩展名。Path.ChangeExtension


Progress 类的使用
private void CopyWithProgress(string[] filenames)
{
    // Display the ProgressBar control.
    pBar1.Visible = true;
    // Set Minimum to 1 to represent the first file being copied.
    pBar1.Minimum = 1;
    // Set Maximum to the total number of files to copy.
    pBar1.Maximum = filenames.Length;
    // Set the initial value of the ProgressBar.
    pBar1.Value = 1;
    // Set the Step property to a value of 1 to represent each file

being copied.
    pBar1.Step = 1;
                // Loop through all files to copy.
    for (int x = 1; x <= filenames.Length; x++)
    {
        // Copy the file and increment the ProgressBar if successful.
        if(CopyFile(filenames[x-1]) == true)
        {
            // Perform the increment on the ProgressBar.
            pBar1.PerformStep();
        }
    }
}

原创粉丝点击