共用方式為


File.Replace 方法

定義

將指定檔案的內容取代為另一個檔案的內容、刪除源檔,以及建立已取代檔案的備份。

多載

Replace(String, String, String)

將指定檔案的內容取代為另一個檔案的內容、刪除源檔,以及建立已取代檔案的備份。

Replace(String, String, String, Boolean)

將指定檔案的內容取代為另一個檔案的內容、刪除源檔並建立已取代檔案的備份,並選擇性地忽略合併錯誤。

備註

Replace 方法會將指定檔案的內容取代為另一個檔案的內容。 它們也會建立已取代之檔案的備份。

Replace(String, String, String)

來源:
File.cs
來源:
File.cs
來源:
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

備份檔的名稱。

例外狀況

destinationFileNamedestinationBackupFileName 參數所描述的路徑不是合法的形式。

destinationFileName 參數是 null

指定了無效的磁碟驅動器。

找不到 sourceFileNamedestinationFileName 參數所描述的檔案。

開啟檔案時發生 I/O 錯誤。

-或-

sourceFileNamedestinationFileName 參數會指定相同的檔案。

指定的路徑、檔名或兩者都超過系統定義的最大長度。

sourceFileNamedestinationFileName 參數會指定唯讀的檔案。

-或-

目前平臺不支援此作業。

-或-

來源或目的地參數會指定目錄,而不是檔案。

-或-

呼叫端沒有必要的許可權。

-或

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 方法會將指定檔案的內容取代為另一個檔案的內容。 它也會建立已取代之檔案的備份。

如果 sourceFileNamedestinationFileName 位於不同的磁碟區上,這個方法會引發例外狀況。 如果 destinationBackupFileName 位於與來源檔案不同的磁碟區上,將會刪除備份檔。

如果您不想建立要取代之檔案的備份,請將 null 傳遞至 destinationBackupFileName 參數。

如果 destinationBackupFileName 已經存在,則會將其取代為 destinationFileName 檔案的內容。

適用於

Replace(String, String, String, Boolean)

來源:
File.cs
來源:
File.cs
來源:
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

true 忽略從已取代檔案到取代檔案的合併錯誤(例如屬性和訪問控制清單 (ACL);否則,false

例外狀況

destinationFileNamedestinationBackupFileName 參數所描述的路徑不是合法的形式。

destinationFileName 參數是 null

指定了無效的磁碟驅動器。

找不到 sourceFileNamedestinationFileName 參數所描述的檔案。

開啟檔案時發生 I/O 錯誤。

-或-

sourceFileNamedestinationFileName 指定相同的檔案。

指定的路徑、檔名或兩者都超過系統定義的最大長度。

sourceFileNamedestinationFileName 參數會指定唯讀的檔案。

-或-

目前平臺不支援此作業。

-或-

來源或目的地參數會指定目錄,而不是檔案。

-或-

呼叫端沒有必要的許可權。

-或

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 方法會將指定檔案的內容取代為另一個檔案的內容。 它也會建立已取代之檔案的備份。

如果 sourceFileNamedestinationFileName 位於不同的磁碟區上,這個方法會引發例外狀況。 如果 destinationBackupFileName 位於與來源檔案不同的磁碟區上,將會刪除備份檔。

如果您不想建立要取代之檔案的備份,請將 null 傳遞至 destinationBackupFileName 參數。

如果 destinationBackupFileName 已經存在,則會將其取代為 destinationFileName 檔案的內容。

適用於