.NET TIPS

パス文字列からファイル名部分を取り出すには?

デジタルアドバンテージ
2004/05/28

 ファイルのパス文字列(フルパス)からファイル名の部分を取り出すには、Pathクラス(System.IO名前空間)のGetFileNameメソッドを使用する。

 例えば、次のように記述してこのメソッドを呼び出せば、その戻り値として文字列「notepad.exe」を得ることができる(VB.NETの場合の記述例)。

Path.GetFileName("c:\windows\system32\notepad.exe")

 パラメータで指定したパス文字列のファイルが実際に存在するかどうかはチェックされない。このメソッドは単に、パス文字列中の最後のパス区切り文字「\」より後にある部分文字列を返すだけである。

 正確には、「\」以外にも「/」(スラッシュ)と「:」(コロン)が、このメソッドではパスの区切り文字として認識される。このため、URLからHTMLファイルのファイル名部分を取得するような場合にも利用できる。

 次のサンプル・プログラムでは、それぞれの区切り文字を含んだ3つの文字列からファイル名部分を取り出している。

// getfilename.cs

using System;
using System.IO;

public class GetFileName {
  static void Main() {
    string path1 = @"c:\windows\system32\notepad.exe";
    string file1 = Path.GetFileName(path1);
    Console.WriteLine(file1); // 出力例:notepad.exe

    string path2 = "c:notepad.exe";
    string file2 = Path.GetFileName(path2);
    Console.WriteLine(file2); // 出力例:notepad.exe

    string path3 = "http://www.atmarkit.co.jp/index.html";
    string file3 = Path.GetFileName(path3);
    Console.WriteLine(file3); // 出力例:index.html
  }
}

// コンパイル方法:csc getfilename.cs
ファイル名部分を取得するC#のサンプル・プログラム(getfilename.cs)
 
' getfilename.vb

Imports System
Imports System.IO

Class GetFileName
  Shared Sub Main()
    Dim path1 As String = "c:\windows\system32\notepad.exe"
    Dim file1 As String = Path.GetFileName(path1)
    Console.WriteLine(file1) ' 出力例:notepad.exe

    Dim path2 As String = "c:notepad.exe"
    Dim file2 As String = Path.GetFileName(path2)
    Console.WriteLine(file2) ' 出力例:notepad.exe

    Dim path3 As String = "http://www.atmarkit.co.jp/index.html"
    Dim file3 As String = Path.GetFileName(path3)
    Console.WriteLine(file3) ' 出力例:index.html
  End Sub
End Class

' コンパイル方法:vbc getfilename.vb
ファイル名部分を取得するVB.NETのサンプル・プログラム(getfilename.vb)

 なお、指定したパス文字列に区切り文字が含まれていない場合には、指定したパス文字列がそのままメソッドの戻り値となる。End of Article

カテゴリ:クラス・ライブラリ 処理対象:パス
使用ライブラリ:Pathクラス(System.IO名前空間)
 
この記事と関連性の高い別の.NET TIPS
パス文字列からディレクトリ・パス部分を取り出すには?
パス名やファイル名からベース名と拡張子を取得するには?
8.3形式の短いパスを長いパスに変換するには?
長いパスを8.3形式の短いパスに変換するには?
アプリケーション設定情報はどこに保存すべきか?
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「.NET TIPS」

TechTargetジャパン

Insider.NET フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ


- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る
- PR -

ホワイトペーパーTechTargetジャパン

ソリューションFLASH

「ITmedia マーケティング」新着記事

第4回 潜在興味が照らし出す専門メディアの新たな価値
潜在興味を言語化できる武器「Topic Model」を手に入れたことで、消費者の「潜在インサイ...

第3回 Smart Phone時代の超UI/UX改善、CVRアップ術
スマートフォンサイトでショッピングや会員登録をするユーザーは、今後もまだまだ増え続...

第1回 「マス」と「デジタル」は横断して分析できる!
マスの効果は測り難いと言われる一方、マーケティング潮流はオムニチャネルが叫ばれるよ...