File.Replace 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將指定檔案的內容取代為另一個檔案的內容、刪除源檔,以及建立已取代檔案的備份。
多載
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
備份檔的名稱。
例外狀況
destinationFileName
或 destinationBackupFileName
參數所描述的路徑不是合法的形式。
destinationFileName
參數是 null
。
指定了無效的磁碟驅動器。
找不到 sourceFileName
或 destinationFileName
參數所描述的檔案。
指定的路徑、檔名或兩者都超過系統定義的最大長度。
sourceFileName
或 destinationFileName
參數會指定唯讀的檔案。
-或-
目前平臺不支援此作業。
-或-
來源或目的地參數會指定目錄,而不是檔案。
-或-
呼叫端沒有必要的許可權。
-或
sourceFileName
和 destinationFileName
指定相同的現有目錄。
範例
下列程式代碼範例會使用 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
位於與來源檔案不同的磁碟區上,將會刪除備份檔。
如果您不想建立要取代之檔案的備份,請將 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
。
例外狀況
destinationFileName
或 destinationBackupFileName
參數所描述的路徑不是合法的形式。
destinationFileName
參數是 null
。
指定了無效的磁碟驅動器。
找不到 sourceFileName
或 destinationFileName
參數所描述的檔案。
指定的路徑、檔名或兩者都超過系統定義的最大長度。
sourceFileName
或 destinationFileName
參數會指定唯讀的檔案。
-或-
目前平臺不支援此作業。
-或-
來源或目的地參數會指定目錄,而不是檔案。
-或-
呼叫端沒有必要的許可權。
-或
sourceFileName
和 destinationFileName
指定相同的現有目錄。
範例
下列程式代碼範例會使用 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
位於與來源檔案不同的磁碟區上,將會刪除備份檔。
如果您不想建立要取代之檔案的備份,請將 null
傳遞至 destinationBackupFileName
參數。
如果 destinationBackupFileName
已經存在,則會將其取代為 destinationFileName
檔案的內容。