现在的位置: 首页 > 综合 > 正文

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

2013年12月02日 ⁄ 综合 ⁄ 共 2789字 ⁄ 字号 评论关闭

将现有文件复制到新文件,不允许改写现有文件。[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();
        }
    }
}

抱歉!评论已关闭.