Path.ChangeExtension(String, String) Path.ChangeExtension(String, String) Path.ChangeExtension(String, String) Path.ChangeExtension(String, String) Method

Definition

Ändert die Erweiterung einer Pfadzeichenfolge.Changes the extension of a path string.

public:
 static System::String ^ ChangeExtension(System::String ^ path, System::String ^ extension);
public static string ChangeExtension (string path, string extension);
static member ChangeExtension : string * string -> string
Public Shared Function ChangeExtension (path As String, extension As String) As String

Parameter

path
String String String String

Die zu ändernden Pfadinformationen.The path information to modify. Der Pfad darf keines der in GetInvalidPathChars() definierten Zeichen enthalten.The path cannot contain any of the characters defined in GetInvalidPathChars().

extension
String String String String

Die neue Erweiterung (mit oder ohne führenden Punkt).The new extension (with or without a leading period). Geben Sie null an, um eine vorhandene Erweiterung aus path zu entfernen.Specify null to remove an existing extension from path.

Gibt zurück

Die geänderten Pfadinformationen.The modified path information.

Auf Desktopplattformen auf Grundlage von Windows werden die Pfadinformationen unverändert zurückgegeben, wenn path null oder eine leere Zeichenfolge ("") ist.On Windows-based desktop platforms, if path is null or an empty string (""), the path information is returned unmodified. Wenn extensionnull ist, enthält die zurückgegebene Zeichenfolge den angegebenen Pfad ohne die Erweiterung.If extension is null, the returned string contains the specified path with its extension removed. Wenn path keine Erweiterung besitzt und extension nicht null ist, enthält die zurückgegebene Pfadzeichenfolge extension, angefügt an das Ende von path.If path has no extension, and extension is not null, the returned path string contains extension appended to the end of path.

Ausnahmen

path enthält mindestens eines der in GetInvalidPathChars() definierten ungültigen Zeichen.path contains one or more of the invalid characters defined in GetInvalidPathChars().

Beispiele

Im folgenden Beispiel wird die ChangeExtension Verwendung der-Methode veranschaulicht.The following example demonstrates a use of the ChangeExtension method.

#using <system.dll>

using namespace System;
using namespace System::IO;
void ChangeExtension()
{
   String^ goodFileName = "C:\\mydir\\myfile.com.extension";
   String^ badFileName = "C:\\mydir\\";
   String^ result;
   result = Path::ChangeExtension( goodFileName,  ".old" );
   Console::WriteLine( "ChangeExtension({0}, '.old') returns '{1}'", goodFileName, result );
   result = Path::ChangeExtension( goodFileName,  "" );
   Console::WriteLine( "ChangeExtension({0}, '') returns '{1}'", goodFileName, result );
   result = Path::ChangeExtension( badFileName,  ".old" );
   Console::WriteLine( "ChangeExtension({0}, '.old') returns '{1}'", badFileName, result );
   
   // This code produces output similar to the following:
   //
   // ChangeExtension(C:\mydir\myfile.com.extension, '.old') returns 'C:\mydir\myfile.com.old'
   // ChangeExtension(C:\mydir\myfile.com.extension, '') returns 'C:\mydir\myfile.com.'
   // ChangeExtension(C:\mydir\, '.old') returns 'C:\mydir\.old'
using System;
using System.IO;

public class PathSnippets
{

    public void ChangeExtension()
    {
        string goodFileName = @"C:\mydir\myfile.com.extension";
        string badFileName = @"C:\mydir\";
        string result;

        result = Path.ChangeExtension(goodFileName, ".old");
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'",
            goodFileName, result); 

        result = Path.ChangeExtension(goodFileName, "");
        Console.WriteLine("ChangeExtension({0}, '') returns '{1}'", 
            goodFileName, result); 

        result = Path.ChangeExtension(badFileName, ".old");
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'", 
            badFileName, result); 

        // This code produces output similar to the following:
        //
        // ChangeExtension(C:\mydir\myfile.com.extension, '.old') returns 'C:\mydir\myfile.com.old'
        // ChangeExtension(C:\mydir\myfile.com.extension, '') returns 'C:\mydir\myfile.com.'
        // ChangeExtension(C:\mydir\, '.old') returns 'C:\mydir\.old'
Imports System.IO

Public Class PathSnippets
    Public Sub ChangeExtension()
        Dim goodFileName As String = "C:\mydir\myfile.com.extension"
        Dim badFileName As String = "C:\mydir\"
        Dim result As String
        result = Path.ChangeExtension(goodFileName, ".old")
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'", goodFileName, result)
        result = Path.ChangeExtension(goodFileName, "")
        Console.WriteLine("ChangeExtension({0}, '') returns '{1}'", goodFileName, result)
        result = Path.ChangeExtension(badFileName, ".old")
        Console.WriteLine("ChangeExtension({0}, '.old') returns '{1}'", badFileName, result)

        ' This code produces output similar to the following:
        '
        ' ChangeExtension(C:\mydir\myfile.com.extension, '.old') returns 'C:\mydir\myfile.com.old'
        ' ChangeExtension(C:\mydir\myfile.com.extension, '') returns 'C:\mydir\myfile.com.'
        ' ChangeExtension(C:\mydir\, '.old') returns 'C:\mydir\.old'

Hinweise

Wenn weder path noch extension einen-Zeitraum (.) enthält ChangeExtension , wird der-Zeitraum hinzugefügt.If neither path nor extension contains a period (.), ChangeExtension adds the period.

Der extension -Parameter kann mehrere Zeiträume und alle gültigen Pfad Zeichen enthalten und kann eine beliebige Länge aufweisen.The extension parameter can contain multiple periods and any valid path characters, and can be any length. Wenn extension path ist null, enthält die zurückgegebene Zeichenfolge den Inhalt von mit dem letzten Zeitraum, und alle folgenden Zeichen wurden entfernt.If extension is null, the returned string contains the contents of path with the last period and all characters following it removed.

Wenn extension eine leere Zeichenfolge ist, enthält die zurückgegebene Pfad Zeichenfolge den Inhalt von path mit allen Zeichen, die nach dem letzten entfernten Zeitraum liegen.If extension is an empty string, the returned path string contains the contents of path with any characters following the last period removed.

Wenn path keine Erweiterung besitzt und extension nicht nullist, enthält path die zurückgegebene Zeichenfolge gefolgt von extension.If path does not have an extension and extension is not null, the returned string contains path followed by extension.

Wenn extension nichtnull ist und keinen führenden Zeitraum enthält, wird der Zeitraum hinzugefügt.If extension is not null and does not contain a leading period, the period is added.

Wenn path eine mehrfach Erweiterung enthält, die durch mehrere Zeiträume getrennt ist, enthält die zurückgegebene path Zeichenfolge den Inhalt von mit dem letzten Zeitraum und allen extensionnachfolgenden Zeichen, die durch ersetzt wurden.If path contains a multiple extension separated by multiple periods, the returned string contains the contents of path with the last period and all characters following it replaced by extension. Wenn path z. b. "\Dir1\examples\pathtests.CSX.txt" und extension "CS" ist, lautet der geänderte Pfad "\Dir1\examples\pathtests.CSX.cs".For example, if path is "\Dir1\examples\pathtests.csx.txt" and extension is "cs", the modified path is "\Dir1\examples\pathtests.csx.cs".

Es ist nicht möglich, zu überprüfen, ob die zurückgegebenen Ergebnisse in allen Szenarien gültig sind.It is not possible to verify that the returned results are valid in all scenarios. Wenn path z. b. leer ist extension , wird angehängt.For example, if path is empty, extension is appended.

Eine Liste der allgemeinen e/a-Aufgaben finden Sie unter Allgemeine e/a-Aufgaben.For a list of common I/O tasks, see Common I/O Tasks.

Gilt für:

Siehe auch