検索
ホームページバックエンド開発C#.Net チュートリアル絶対パスからファイル名を取得するC#プログラム

###############導入###

絶対パスからファイル名を取得する C# プログラムを理解してみましょう。ファイル名を取得するために使用される File クラスの GetFileName メソッドと、拡張子なしで指定されたパス文字列のファイル名を返す別のメソッド GetFileNameWithoutExtension の使用法を見ていきます。 2 つの絶対パスから相対パスを取得するには、C# の Uri クラスを使用します。 Uri クラスには、コードで使用する MakeRelativeUri など、URI を操作するためのメソッドがいくつか用意されています。 絶対パスからファイル名を取得するC#プログラム

ファイルは、C# で情報を保存するために使用される場所です。ファイルの集まりをディレクトリと呼びます。 C# では、ファイルは System.IO 名前空間に属します。この名前空間には、ファイルに対する操作を実行するための他のクラスも含まれています。 Path は同じ名前空間内の別のクラスです。パスには絶対パスと相対パスの 2 種類があります。絶対パスには、システム上のファイルまたはディレクトリを見つけるために必要なすべての情報が含まれています。絶対パスの例は、C:\Program Files\Google Chrome\filename.exe です。

相対パスは、ユーザーが作業している現在のディレクトリからの相対的なファイルのパスを示します。前述の同様の例を考えてみましょう。メインの実行可能ファイルが C:\Program Files にある場合、filename.exe への相対パスは Google Chrome\filename.exe になります。

GetFileName メソッド

これは C# の file クラスにあるメソッドで、絶対パスからファイル名を取得するために使用されます。 path.GetFileName は、この操作を実行するために使用されます。絶対パスを入力として受け取り、指定されたパスのファイル名と拡張子を返します。入力として使用される絶対パスは文字列形式です。

###文法### リーリー

ここでのパスは、ファイル名を取得する必要がある文字列です。

上記の例では、GetFileName はパス クラスのメソッドです。このメソッドは、パス名の最後のディレクトリ文字区切り文字の後の文字を返します。存在しない場合は、NULL 値が返されます。また、パスの最後の文字がディレクトリまたはボリューム区切り文字である場合は、NULL 値を返します。

同様に、パスが null の場合は、NULL 値が返されます。

ファイル名が「C:\mydir\filename.exe」の場合、出力結果はfilename.exeとなります。 ###アルゴリズム###

以下のアルゴリズムは、File.GetFileName() メソッドを使用してファイル名を取得する段階的なプロセスを示します。

たとえば、ファイルの名前を見つける必要がある場合、次のアルゴリズムを使用して理解できます。

ステップ 1

ファイル パスの名前を保存する文字列を作成します。これは絶対パスであることに注意してください。

ステップ 2

最初は空の文字列ファイル名を作成します。 ステップ 3

GetFileName メソッドの出力を文字列ファイル名に保存します。 ステップ 4

上記コードのファイル名は「myfile」なので、出力は同じになります。 ステップ 5

いずれの場合でもパスが null の場合、返される出力も NULL になります。 ステップ 6

GetFileName メソッドを使用すると、絶対パスからファイルの名前を返すことができます。 ###例### リーリー ###出力### リーリー 時間の複雑さ

上記のコードでは、main 関数内にループやネストされたループがないことがわかり、時間計算量は単純に O(1) です。

GetFileNameWithoutExtension メソッド 前に説明したメソッドは、GetFileName メソッドを使用してファイルの名前を返す方法です。次に、拡張子なしでファイル名を返す方法を見てみましょう。パスの名前が「C:\Program Files\Google Chrome\filename.exe」であるとすると、返される出力は「filename」になります。入力として絶対パスを受け入れ、出力としてファイル名を返します。入力される絶対パスは文字列形式です。構文 - 「public static string GetFileName(string path)」、ここで path は拡張子なしのファイル名を取得する文字列です。 上記の例では、GetFileName はパス クラスのメソッドです。このメソッドは、パス名の最後のディレクトリ文字区切り文字の後の文字を拡張子なしで返します。存在しない場合は、NULL 値が返されます。また、パスの最後の文字がディレクトリまたはボリューム区切り文字である場合は、NULL 値を返します。

算法

在此算法中,我们将了解使用 GetFileNameWithoutExtension 方法返回不带扩展名的文件名的分步方法。

第 1 步  创建一个字符串来存储绝对路径的名称。

步骤2  创建另一个名为filename的字符串,该字符串将作为输出返回。

第三步 − 字符串变量filename将以null作为其初始值。

第四步  使用GetFileNameWithoutExtension方法生成的输出将存储在一个字符串filename中。

步骤 5  如果文件为空,则输出也将相同。

第 6 步 − 因此我们可以使用 GetFileNameWithoutExtension 方法返回不带扩展名的文件名。

示例

using System;
using System.IO;
using System.Text;

class FileName {
   static void Main(string[] args) {
      //declare the string path first.
      string path = "C:\Program Files\Google Chrome\filename.exe";
      
      //declare the string filename and store null initially.
      string filename = null;
      filename = Path.GetFileNameWithoutExtension(path);
      
      //store the answer in the variable filename.
      Console.WriteLine(filename);
      Console.ReadLine();
   }
}

输出

filename.exe

时间复杂度

在上述代码中,我们可以观察到只使用了一种直接生成输出并将其存储在相应变量中的方法。没有使用任何循环或任何类型的复杂递归函数。这仅仅构成了时间复杂度为O(1)。

结论

在本文中,我们广泛讨论了使用GetFileName方法从绝对路径中获取带有扩展名的文件名,以及使用GetFileNameWithoutExtension方法获取不带扩展名的文件名的C#程序。

我们希望本文能够帮助您增强有关 C# 的知识。

以上が絶対パスからファイル名を取得するC#プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はtutorialspointで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
C言語でchar配列の使用方法C言語でchar配列の使用方法Apr 03, 2025 pm 03:24 PM

Char Arrayは文字シーケンスをC言語で保存し、char array_name [size]として宣言されます。アクセス要素はサブスクリプト演算子に渡され、要素は文字列のエンドポイントを表すnullターミネーター「\ 0」で終了します。 C言語は、strlen()、strcpy()、strcat()、strcmp()など、さまざまな文字列操作関数を提供します。

C文字列におけるcharの役割は何ですかC文字列におけるcharの役割は何ですかApr 03, 2025 pm 03:15 PM

Cでは、文字列でCharタイプが使用されます。1。単一の文字を保存します。 2。配列を使用して文字列を表し、ヌルターミネーターで終了します。 3。文字列操作関数を介して動作します。 4.キーボードから文字列を読み取りまたは出力します。

C言語で特殊文字を処理する方法C言語で特殊文字を処理する方法Apr 03, 2025 pm 03:18 PM

C言語では、以下などのエスケープシーケンスを通じて特殊文字が処理されます。\ nはラインブレークを表します。 \ tはタブ文字を意味します。 ESACEシーケンスまたは文字定数を使用して、Char C = '\ n'などの特殊文字を表します。バックスラッシュは2回逃げる必要があることに注意してください。さまざまなプラットフォームとコンパイラが異なるエスケープシーケンスを持っている場合があります。ドキュメントを参照してください。

マルチスレッドと非同期C#の違いマルチスレッドと非同期C#の違いApr 03, 2025 pm 02:57 PM

マルチスレッドと非同期の違いは、マルチスレッドが複数のスレッドを同時に実行し、現在のスレッドをブロックせずに非同期に操作を実行することです。マルチスレッドは計算集約型タスクに使用されますが、非同期はユーザーインタラクションに使用されます。マルチスレッドの利点は、コンピューティングのパフォーマンスを改善することですが、非同期の利点はUIスレッドをブロックしないことです。マルチスレッドまたは非同期を選択することは、タスクの性質に依存します。計算集約型タスクマルチスレッド、外部リソースと相互作用し、UIの応答性を非同期に使用する必要があるタスクを使用します。

C言語でさまざまなシンボルを使用する方法C言語でさまざまなシンボルを使用する方法Apr 03, 2025 pm 04:48 PM

c言語のシンボルの使用方法は、算術、割り当て、条件、ロジック、ビット演算子などをカバーします。算術演算子は基本的な数学的操作に使用されます。割り当てと追加、下位、乗算、除算の割り当てには、条件操作に使用されます。ポインター、ファイル終了マーカー、および非数値値。

C言語でCharを変換する方法C言語でCharを変換する方法Apr 03, 2025 pm 03:21 PM

C言語では、charタイプの変換は、キャスト:キャスト文字を使用することにより、別のタイプに直接変換できます。自動タイプ変換:あるタイプのデータが別のタイプの値に対応できる場合、コンパイラは自動的に変換します。

C言語合計の機能は何ですか?C言語合計の機能は何ですか?Apr 03, 2025 pm 02:21 PM

C言語に組み込みの合計機能はないため、自分で書く必要があります。合計は、配列を通過して要素を蓄積することで達成できます。ループバージョン:合計は、ループとアレイの長さを使用して計算されます。ポインターバージョン:ポインターを使用してアレイ要素を指し示し、効率的な合計が自己概要ポインターを通じて達成されます。アレイバージョンを動的に割り当てます:[アレイ]を動的に割り当ててメモリを自分で管理し、メモリの漏れを防ぐために割り当てられたメモリが解放されます。

C言語のcharとwchar_tの違いC言語のcharとwchar_tの違いApr 03, 2025 pm 03:09 PM

C言語では、charとwchar_tの主な違いは文字エンコードです。CharはASCIIを使用するか、ASCIIを拡張し、WCHAR_TはUnicodeを使用します。 Charは1〜2バイトを占め、WCHAR_Tは2〜4バイトを占有します。 charは英語のテキストに適しており、wchar_tは多言語テキストに適しています。 CHARは広くサポートされており、WCHAR_TはコンパイラとオペレーティングシステムがUnicodeをサポートするかどうかに依存します。 CHARの文字範囲は限られており、WCHAR_Tの文字範囲が大きく、特別な機能が算術演算に使用されます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。