Bagikan melalui


Path.ChangeExtension(String, String) Metode

Definisi

Mengubah ekstensi string jalur.

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

Parameter

path
String

Informasi jalur yang akan diubah.

extension
String

Ekstensi baru (dengan atau tanpa periode awal). Tentukan null untuk menghapus ekstensi yang ada dari path.

Mengembalikan

Informasi jalur yang dimodifikasi.

Pada platform desktop berbasis Windows, jika path adalah null atau string kosong (""), informasi jalur dikembalikan tanpa dimodifikasi. Jika extension adalah null, string yang dikembalikan berisi jalur yang ditentukan dengan ekstensinya dihapus. Jika path tidak memiliki ekstensi, dan extension bukan null, string jalur yang dikembalikan berisi extension ditambahkan ke akhir path.

Pengecualian

versi .NET Framework dan .NET Core yang lebih lama dari 2.1: path berisi satu atau beberapa karakter yang tidak valid yang ditentukan dalam GetInvalidPathChars().

Contoh

Contoh berikut menunjukkan penggunaan ChangeExtension metode .

#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'

Keterangan

Jika tidak berisi pathextension titik (.), ChangeExtension tambahkan titik.

Parameter extension dapat berisi beberapa titik dan karakter jalur yang valid, dan dapat memiliki panjang apa pun. Jika extension adalah null, string yang dikembalikan berisi konten path dengan periode terakhir dan semua karakter setelahnya dihapus.

Jika extension adalah string kosong, string jalur yang dikembalikan berisi konten path dengan karakter apa pun setelah periode terakhir dihapus.

Jika path tidak memiliki ekstensi dan extension bukan null, string yang dikembalikan berisi path diikuti oleh extension.

Jika extension tidak null dan tidak berisi periode awal, periode ditambahkan.

Jika path berisi beberapa ekstensi yang dipisahkan oleh beberapa titik, string yang dikembalikan berisi konten path dengan periode terakhir dan semua karakter setelahnya digantikan oleh extension. Misalnya, jika path adalah "\Dir1\examples\pathtests.csx.txt" dan extension "cs", jalur yang dimodifikasi adalah "\Dir1\examples\pathtests.csx.cs".

Tidak dimungkinkan untuk memverifikasi bahwa hasil yang dikembalikan valid dalam semua skenario. Misalnya, jika path kosong, extension ditambahkan.

Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.

Berlaku untuk

Lihat juga