Path.ChangeExtension(String, String) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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í tečkou nebo bez). Určete null , jestli chcete odebrat existující rozšíření z path.
Návraty
Informace o změněných cest.
Pokud je null na desktopových platformách path s Windows 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 odebraným rozšířením. Pokud path nemá žádné rozšíření a extension není null, obsahuje vrácený řetězec extension cesty připojený na konec .path
Výjimky
.NET Framework a .NET Core verze starší než 2.1: path obsahuje jeden nebo více neplatných znaků definovaných v GetInvalidPathChars()nástroji .
Příklady
Následující příklad ukazuje použití ChangeExtension metody.
#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'
Poznámky
Pokud tečku (.) neobsahuje pathextension , ChangeExtension přidá se tečka.
Parametr extension může obsahovat více tečk a platných znaků cesty a může mít libovolnou délku. Pokud extension je null, obsahuje vrácený řetězec obsah path s poslední tečkou a všechny znaky za ním odebrané.
Pokud extension je prázdný řetězec, vrácený řetězec cesty obsahuje obsah path s odebranými znaky za poslední tečkou.
Pokud path nemá příponu a extension není null, obsahuje vrácený řetězec path následovaný řetězcem extension.
Pokud extension není null a neobsahuje počáteční období, přidá se období.
Pokud path obsahuje více přípon oddělených více tečkami, obsahuje vrácený řetězec obsah path s poslední tečkou a všechny znaky za ním nahrazené znakem extension. Pokud je například path "\Dir1\examples\pathtests.csx.txt" a extension "cs", upravená cesta je "\Dir1\examples\pathtests.csx.cs".
Není možné ověřit, jestli jsou vrácené výsledky platné ve všech scénářích. Pokud je například path 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.