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 path
extension
, 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.