Path.ChangeExtension(String, String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Modifie l'extension d'une chaîne de chemin d'accès.
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
Paramètres
- path
- String
Informations relatives au chemin d’accès à modifier.
- extension
- String
Nouvelle extension (avec ou sans point de début). Spécifiez null
pour supprimer une extension existante de path
.
Retours
Informations relatives au chemin d'accès modifiées.
Sur les plateformes de bureau Windows, si path
est null
ou est une chaîne vide (""), les informations relatives au chemin d’accès sont retournées inchangées. Si extension
est null
, la chaîne retournée contient le chemin d'accès spécifié avec l'extension supprimée. Si path
ne possède pas d’extension et si extension
n’est pas null
, la chaîne du chemin d’accès retournée contient extension
, ajouté à la fin de path
.
Exceptions
.NET Framework et .NET Core versions antérieures à 2.1 : path
contient un ou plusieurs des caractères non valides définis dans GetInvalidPathChars().
Exemples
L’exemple suivant illustre l’utilisation de la ChangeExtension
méthode .
#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'
Remarques
Si ni ne path
extension
contient de point (.), ChangeExtension
ajoute le point.
Le extension
paramètre peut contenir plusieurs points et tous les caractères de chemin d’accès valides, et peut être n’importe quelle longueur. Si extension
a la valeur null
, la chaîne retournée contient le contenu de path
avec le dernier point et tous les caractères qui le suivent supprimés.
Si extension
est une chaîne vide, la chaîne de chemin d’accès retournée contient le contenu de path
avec tous les caractères qui suivent le dernier point supprimé.
Si path
n’a pas d’extension et extension
n’est pas null
, la chaîne retournée contient path
suivie de extension
.
Si extension
n’est pas null
et ne contient pas de période de début, le point est ajouté.
Si path
contient une extension multiple séparée par plusieurs points, la chaîne retournée contient le contenu de path
avec le dernier point et tous les caractères qui le suivent remplacés par extension
. Par exemple, si path
est « \Dir1\examples\pathtests.csx.txt » et extension
« cs », le chemin modifié est « \Dir1\examples\pathtests.csx.cs ».
Il n’est pas possible de vérifier que les résultats retournés sont valides dans tous les scénarios. Par exemple, si path
est vide, extension
est ajouté.
Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches courantes d’E/S.