Path.ChangeExtension(String, String) Metoda

Definice

Změní rozšíření řetězce cesty.

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

Parametry

path
String

Informace o cestě, které chcete upravit.

extension
String

Nové rozšíření (s úvodním tečkou nebo bez) Určete null , jestli chcete odebrat existující rozšíření z pathobjektu .

Návraty

Informace o změněné cestě.

Pokud je path Windows desktopových platforem null nebo prázdný řetězec (""), informace o cestě se vrátí beze změny. Pokud extension je null, vrácený řetězec obsahuje zadanou cestu s jeho rozšířením odebraným. Pokud path nemá žádné rozšíření a extension není null, vrácený řetězec cesty obsahuje extension připojeno na konec .path

Výjimky

Verze .NET Framework a .NET Core starší než 2.1: path obsahuje jeden nebo více neplatných znaků definovaných v GetInvalidPathChars().

Příklady

Následující příklad ukazuje použití ChangeExtension metody.

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'

Poznámky

Pokud ani pathextension tečka neobsahuje (.), ChangeExtension přičte tečku.

Parametr extension může obsahovat více tečk a libovolných platných znaků cesty a může mít libovolnou délku. Pokud extension je null, vrácený řetězec obsahuje obsah path s posledním tečkou a všechny znaky následující po odebrání.

Pokud extension je prázdný řetězec, vrácený řetězec cesty obsahuje obsah path s libovolnými znaky za posledním odebraným obdobím.

Pokud path nemá příponu a extension není null, vrácený řetězec obsahuje path následovaný extension.

Pokud extension není null a neobsahuje úvodní tečku, přidá se tečka.

Pokud path obsahuje více přípon oddělených více tečkami, vrácený řetězec obsahuje obsah path s posledním tečkou a všechny znaky, které extensionnásledují za ním. Pokud je například path "\Dir1\examples\pathtests.csx.txt" a extension je "cs", upravená cesta je "\Dir1\examples\pathtests.csx.cs".

Vrácené výsledky není možné ověřit ve všech scénářích. Pokud path je například prázdný, extension připojí se.

Seznam běžných vstupně-výstupních úloh najdete v tématu Běžné vstupně-výstupní úlohy.

Platí pro

Viz také