File.Replace 方法

定义

使用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份。

重载

Replace(String, String, String)

使用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份。

Replace(String, String, String, Boolean)

用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份,还可以忽略合并错误。

注解

方法 Replace 将指定文件的内容替换为另一个文件的内容。 他们还创建已替换的文件的备份。

Replace(String, String, String)

Source:
File.cs
Source:
File.cs
Source:
File.cs

使用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份。

public:
 static void Replace(System::String ^ sourceFileName, System::String ^ destinationFileName, System::String ^ destinationBackupFileName);
public static void Replace (string sourceFileName, string destinationFileName, string? destinationBackupFileName);
public static void Replace (string sourceFileName, string destinationFileName, string destinationBackupFileName);
static member Replace : string * string * string -> unit
Public Shared Sub Replace (sourceFileName As String, destinationFileName As String, destinationBackupFileName As String)

参数

sourceFileName
String

替换由 destinationFileName 指定的文件的文件名。

destinationFileName
String

被替换文件的名称。

destinationBackupFileName
String

备份文件的名称。

例外

destinationFileName 参数描述的路径格式不合法。

- 或 -

destinationBackupFileName 参数描述的路径格式不合法。

destinationFileName 参数为 null

指定了无效的驱动器。

找不到当前 FileInfo 对象描述的文件。

- 或 -

找不到 destinationBackupFileName 参数描述的文件。

打开文件时发生 I/O 错误。

- 或 -

sourceFileNamedestinationFileName 参数指定相同的文件。

指定的路径和/或文件名超过了系统定义的最大长度。

sourceFileNamedestinationFileName 参数指定只读的文件。

- 或 -

当前平台不支持此操作。

- 或 -

源参数或目标参数指定的是目录,而不是文件。

- 或 -

调用方没有所要求的权限。

-or

sourceFileNamedestinationFileName 指定相同的现有目录。

示例

下面的代码示例使用 Replace 方法将文件替换为另一个文件,并创建已替换文件的备份。

using namespace System;
using namespace System::IO;


// Move a file into another file, delete the original,
// and create a backup of the replaced file.

void ReplaceFile(String^ fileToMoveAndDelete,
                 String^ fileToReplace, String^ backupOfFileToReplace)
{
    File::Replace(fileToMoveAndDelete, fileToReplace,
        backupOfFileToReplace, false);
}	


int main()
{
    try
    {
        String^ originalFile = "test.xml";
        String^ fileToReplace = "test2.xml";
        String^ backUpOfFileToReplace = "test2.xml.bac";

        Console::WriteLine("Move the contents of " + originalFile + " into " 
            + fileToReplace + ", delete " + originalFile
            + ", and create a backup of " + fileToReplace + ".");

        // Replace the file.
        ReplaceFile(originalFile, fileToReplace, backUpOfFileToReplace);

        Console::WriteLine("Done");
    }
    catch (IOException^ ex)
    {
        Console::WriteLine(ex->Message);
    } 
};
using System;
using System.IO;

namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string OriginalFile = "test.xml";
                string FileToReplace = "test2.xml";
                string BackUpOfFileToReplace = "test2.xml.bac";

                Console.WriteLine("Move the contents of " + OriginalFile + " into " + FileToReplace + ", delete " + OriginalFile +
                                   ", and create a backup of " + FileToReplace + ".");

                // Replace the file.
                ReplaceFile(OriginalFile, FileToReplace, BackUpOfFileToReplace);

                Console.WriteLine("Done");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            Console.ReadLine();
        }

        // Move a file into another file, delete the original, and create a backup of the replaced file.
        public static void ReplaceFile(string FileToMoveAndDelete, string FileToReplace, string BackupOfFileToReplace)
        {
            File.Replace(FileToMoveAndDelete, FileToReplace, BackupOfFileToReplace, false);
        }
    }
}
open System
open System.IO

// Move a file into another file, delete the original, and create a backup of the replaced file.
let replaceFile fileToMoveAndDelete fileToReplace backupOfFileToReplace =
    File.Replace(fileToMoveAndDelete, fileToReplace, backupOfFileToReplace, false)

let originalFile = "test.xml"
let fileToReplace = "test2.xml"
let backUpOfFileToReplace = "test2.xml.bac"

printfn
    $"Move the contents of {originalFile} into {fileToReplace}, delete {originalFile}, and create a backup of {fileToReplace}."

// Replace the file.
replaceFile originalFile fileToReplace backUpOfFileToReplace

printfn "Done"
Imports System.IO

Module FileExample

    Sub Main()
        Try
            Dim OriginalFile As String = "test.xml"
            Dim FileToReplace As String = "test2.xml"
            Dim BackUpOfFileToReplace As String = "test2.xml.bac"

            Console.WriteLine("Move the contents of " + OriginalFile + " into " + FileToReplace + ", delete " + OriginalFile + ", and create a backup of " + FileToReplace + ".")

            ' Replace the file.
            ReplaceFile(OriginalFile, FileToReplace, BackUpOfFileToReplace)

            Console.WriteLine("Done")
        Catch e As Exception
            Console.WriteLine(e)
        End Try

        Console.ReadLine()

    End Sub

    ' Move a file into another file, delete the original, and create a backup of the replaced file.
    Sub ReplaceFile(ByVal FileToMoveAndDelete As String, ByVal FileToReplace As String, ByVal BackupOfFileToReplace As String)

        ' Replace the file.
        File.Replace(FileToMoveAndDelete, FileToReplace, BackupOfFileToReplace, False)

    End Sub
End Module

注解

方法 Replace 将指定文件的内容替换为另一个文件的内容。 它还会创建被替换的文件的备份。

sourceFileName如果 和 destinationFileName 位于不同的卷上,此方法将引发异常。 destinationBackupFileName如果 位于与源文件不同的卷上,则会删除备份文件。

destinationBackupFileName如果不想创建要替换的文件的备份,请传递给 null 参数。

如果 已存在, destinationBackupFileName 则会将其替换为文件的内容 destinationFileName

适用于

Replace(String, String, String, Boolean)

Source:
File.cs
Source:
File.cs
Source:
File.cs

用其他文件的内容替换指定文件的内容,这一过程将删除原始文件,并创建被替换文件的备份,还可以忽略合并错误。

public:
 static void Replace(System::String ^ sourceFileName, System::String ^ destinationFileName, System::String ^ destinationBackupFileName, bool ignoreMetadataErrors);
public static void Replace (string sourceFileName, string destinationFileName, string? destinationBackupFileName, bool ignoreMetadataErrors);
public static void Replace (string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors);
static member Replace : string * string * string * bool -> unit
Public Shared Sub Replace (sourceFileName As String, destinationFileName As String, destinationBackupFileName As String, ignoreMetadataErrors As Boolean)

参数

sourceFileName
String

替换由 destinationFileName 指定的文件的文件名。

destinationFileName
String

被替换文件的名称。

destinationBackupFileName
String

备份文件的名称。

ignoreMetadataErrors
Boolean

如果忽略从被替换文件到替换文件的合并错误(如特性和访问控制列表 (ACL)),则为 true,否则为 false

例外

destinationFileName 参数描述的路径格式不合法。

- 或 -

destinationBackupFileName 参数描述的路径格式不合法。

destinationFileName 参数为 null

指定了无效的驱动器。

找不到当前 FileInfo 对象描述的文件。

- 或 -

找不到 destinationBackupFileName 参数描述的文件。

打开文件时发生 I/O 错误。

- 或 -

sourceFileNamedestinationFileName 参数指定相同的文件。

指定的路径和/或文件名超过了系统定义的最大长度。

sourceFileNamedestinationFileName 参数指定只读的文件。

- 或 -

当前平台不支持此操作。

- 或 -

源参数或目标参数指定的是目录,而不是文件。

- 或 -

调用方没有所要求的权限。

-or

sourceFileNamedestinationFileName 指定相同的现有目录。

示例

下面的代码示例使用 Replace 方法将文件替换为另一个文件,并创建已替换文件的备份。

using namespace System;
using namespace System::IO;


// Move a file into another file, delete the original,
// and create a backup of the replaced file.

void ReplaceFile(String^ fileToMoveAndDelete,
                 String^ fileToReplace, String^ backupOfFileToReplace)
{
    File::Replace(fileToMoveAndDelete, fileToReplace,
        backupOfFileToReplace, false);
}	


int main()
{
    try
    {
        String^ originalFile = "test.xml";
        String^ fileToReplace = "test2.xml";
        String^ backUpOfFileToReplace = "test2.xml.bac";

        Console::WriteLine("Move the contents of " + originalFile + " into " 
            + fileToReplace + ", delete " + originalFile
            + ", and create a backup of " + fileToReplace + ".");

        // Replace the file.
        ReplaceFile(originalFile, fileToReplace, backUpOfFileToReplace);

        Console::WriteLine("Done");
    }
    catch (IOException^ ex)
    {
        Console::WriteLine(ex->Message);
    } 
};
using System;
using System.IO;

namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string OriginalFile = "test.xml";
                string FileToReplace = "test2.xml";
                string BackUpOfFileToReplace = "test2.xml.bac";

                Console.WriteLine("Move the contents of " + OriginalFile + " into " + FileToReplace + ", delete " + OriginalFile +
                                   ", and create a backup of " + FileToReplace + ".");

                // Replace the file.
                ReplaceFile(OriginalFile, FileToReplace, BackUpOfFileToReplace);

                Console.WriteLine("Done");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            Console.ReadLine();
        }

        // Move a file into another file, delete the original, and create a backup of the replaced file.
        public static void ReplaceFile(string FileToMoveAndDelete, string FileToReplace, string BackupOfFileToReplace)
        {
            File.Replace(FileToMoveAndDelete, FileToReplace, BackupOfFileToReplace, false);
        }
    }
}
open System
open System.IO

// Move a file into another file, delete the original, and create a backup of the replaced file.
let replaceFile fileToMoveAndDelete fileToReplace backupOfFileToReplace =
    File.Replace(fileToMoveAndDelete, fileToReplace, backupOfFileToReplace, false)

let originalFile = "test.xml"
let fileToReplace = "test2.xml"
let backUpOfFileToReplace = "test2.xml.bac"

printfn
    $"Move the contents of {originalFile} into {fileToReplace}, delete {originalFile}, and create a backup of {fileToReplace}."

// Replace the file.
replaceFile originalFile fileToReplace backUpOfFileToReplace

printfn "Done"
Imports System.IO

Module FileExample

    Sub Main()
        Try
            Dim OriginalFile As String = "test.xml"
            Dim FileToReplace As String = "test2.xml"
            Dim BackUpOfFileToReplace As String = "test2.xml.bac"

            Console.WriteLine("Move the contents of " + OriginalFile + " into " + FileToReplace + ", delete " + OriginalFile + ", and create a backup of " + FileToReplace + ".")

            ' Replace the file.
            ReplaceFile(OriginalFile, FileToReplace, BackUpOfFileToReplace)

            Console.WriteLine("Done")
        Catch e As Exception
            Console.WriteLine(e)
        End Try

        Console.ReadLine()

    End Sub

    ' Move a file into another file, delete the original, and create a backup of the replaced file.
    Sub ReplaceFile(ByVal FileToMoveAndDelete As String, ByVal FileToReplace As String, ByVal BackupOfFileToReplace As String)

        ' Replace the file.
        File.Replace(FileToMoveAndDelete, FileToReplace, BackupOfFileToReplace, False)

    End Sub
End Module

注解

方法 Replace 将指定文件的内容替换为另一个文件的内容。 它还会创建被替换的文件的备份。

sourceFileName如果 和 destinationFileName 位于不同的卷上,此方法将引发异常。 destinationBackupFileName如果 位于与源文件不同的卷上,则会删除备份文件。

destinationBackupFileName如果不想创建要替换的文件的备份,请传递给 null 参数。

如果 已存在, destinationBackupFileName 则会将其替换为文件的内容 destinationFileName

适用于