実行中ファイル または 実行中アセンブリ のファイルパスを取得する サンプルコード を以下にまとめます。
以下の サンプルコード では、実行中アセンブリが存在するディレクトリを取得したいます。
実行中アセンブリのファイルパスを取得した後、 Path.GetDirectoryName()
を利用してディレクトリパスを取得しています。
サンプルコード
namespace Sample { using System.IO; using System.Reflection; public class Config { /// <summary> /// 設定ファイル名 /// </summary> private static string fileName = @"app.config"; /// <summary> /// 設定ファイルパス /// </summary> private static string filePath = Path.Combine( Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), Config.fileName); /// <summary> /// Config クラスのインスタンスを初期化します。 /// </summary> public Config() { } } }
…で、結論ですが、実行中アセンブリ情報が取得できれば良いので、以下のどちらかでファイルパスを取得することができます。
staticなフィールドで取得する場合
Assembly.GetExecutingAssembly().Location
インスタンス中で取得する場合
this.GetType().Assembly.Location
最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!