Path.ChangeExtension(String, String) Methode

Definition

Ändert die Erweiterung einer Pfadzeichenfolge.

public:
 static System::String ^ ChangeExtension(System::String ^ path, System::String ^ extension);
public static string ChangeExtension (string path, 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

Die zu ändernden Pfadinformationen.

extension
String

Die neue Erweiterung (mit oder ohne führenden Punkt). Geben Sie null an, um eine vorhandene Erweiterung aus path zu entfernen.

Gibt zurück

Die geänderten Pfadinformationen.

Auf Desktopplattformen auf Grundlage von Windows werden die Pfadinformationen unverändert zurückgegeben, wenn pathnull oder eine leere Zeichenfolge ("") ist. Wenn extensionnull ist, enthält die zurückgegebene Zeichenfolge den angegebenen Pfad ohne die Erweiterung. Wenn path keine Erweiterung besitzt und extension nicht null ist, enthält die zurückgegebene Pfadzeichenfolge extension, angefügt an das Ende von path.

Ausnahmen

.NET Framework- und .NET Core-Versionen, die älter als 2.1 sind: path enthält mindestens ein ungültiges Zeichen, das in GetInvalidPathChars()definiert ist.

Beispiele

Im folgenden Beispiel wird die Verwendung der ChangeExtension -Methode veranschaulicht.

#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 Punkt (.) enthält, ChangeExtension wird der Punkt hinzugefügt.

Der extension Parameter kann mehrere Punkte und gültige Pfadzeichen enthalten und eine beliebige Länge aufweisen. Wenn extension ist null, enthält die zurückgegebene Zeichenfolge den Inhalt von path mit dem letzten Punkt und allen darauf folgenden Zeichen, die entfernt wurden.

Wenn extension eine leere Zeichenfolge ist, enthält die zurückgegebene Pfadzeichenfolge den Inhalt von path , wobei alle Zeichen nach dem letzten Zeitraum entfernt wurden.

Wenn path über keine Erweiterung verfügt und extension nicht nullist, enthält path die zurückgegebene Zeichenfolge gefolgt von extension.

Wenn extension nicht null ist und keinen vorangestellten Zeitraum enthält, wird der Zeitraum hinzugefügt.

Wenn path eine durch mehrere Punkte getrennte Erweiterung enthält, enthält die zurückgegebene Zeichenfolge den Inhalt von path mit dem letzten Punkt und allen darauf folgenden Zeichen, die durch ersetzt werden extension. Wenn path beispielsweise "\Dir1\examples\pathtests.csx.txt" und extension "cs" ist, lautet der geänderte Pfad "\Dir1\examples\pathtests.csx.cs".

Es ist nicht möglich, zu überprüfen, ob die zurückgegebenen Ergebnisse in allen Szenarien gültig sind. Wenn beispielsweise path leer ist, extension wird angefügt.

Eine Liste der allgemeinen E/A-Aufgaben finden Sie unter Allgemeine E/A-Aufgaben.

Gilt für:

Weitere Informationen