Język

Path.ChangeExtension(String, String) Metoda

Definicja

Zmienia rozszerzenie ciągu ścieżki.

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

Informacje o ścieżce do zmodyfikowania.

extension
String

Nowe rozszerzenie (z lub bez okresu wiodącego). Określ null , aby usunąć istniejące rozszerzenie z pathprogramu .

Zwraca

Zmodyfikowane informacje o ścieżce.

Jeśli na platformach klasycznych opartych na Windows, jeśli path jest null lub pusty ciąg (""), informacje o ścieżce są zwracane niezmodyfikowane. Jeśli extension parametr ma nullwartość , zwracany ciąg zawiera określoną ścieżkę z usuniętym rozszerzeniem. Jeśli path nie ma rozszerzenia i extension nie nulljest , zwracany ciąg ścieżki zawiera extension dołączane na końcu .path

Wyjątki

Wersje .NET Framework i .NET Core starsze niż 2.1: path zawierają co najmniej jeden nieprawidłowy znak zdefiniowany w programie GetInvalidPathChars().

Przykłady

W poniższym przykładzie pokazano użycie 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'

Uwagi

Jeśli ani pathextension nie zawiera kropki (.), ChangeExtension dodaje kropkę.

Parametr extension może zawierać wiele krosek i dowolnych prawidłowych znaków ścieżki i może mieć dowolną długość. Jeśli extension to null, zwracany ciąg zawiera zawartość path z ostatnim kropką i wszystkimi znakami po nim usuniętymi.

Jeśli extension jest pustym ciągiem, zwracany ciąg ścieżki zawiera zawartość path z dowolnymi znakami po usunięciu ostatniego okresu.

Jeśli path nie ma rozszerzenia i extension nie nulljest , zwracany ciąg zawiera path ciąg, po którym extensionnastępuje .

Jeśli extension nie null jest i nie zawiera okresu wiodącego, zostanie dodany okres.

Jeśli path zawiera wiele rozszerzeń oddzielonych wieloma kropkami, zwracany ciąg zawiera zawartość path z ostatnim kropką i wszystkimi znakami po nim zastąpionymi przez extension. Na przykład jeśli path ma wartość "\Dir1\examples\pathtests.csx.txt" i extension ma wartość "cs", zmodyfikowana ścieżka to "\Dir1\examples\pathtests.csx.cs".

Nie można sprawdzić, czy zwrócone wyniki są prawidłowe we wszystkich scenariuszach. Na przykład, jeśli path jest pusty, extension jest dołączany.

Aby uzyskać listę typowych zadań we/wy, zobacz Typowe zadania we/wy.

Dotyczy

Zobacz też