C# の %AppData% パスにアクセスします
C# では、%AppData% ディレクトリ (アプリケーション データの保存に使用されるユーザー固有のディレクトリ) へのパスを取得するのが難しい場合があります。問題で提供されているコード スニペット:
<code class="language-c#">dt.ReadXml("%AppData%\DateLinks.xml");</code>
.NET は %AppData% を自動的に展開しないため、例外が発生します。
解決策は、Environment
クラスによって提供される GetFolderPath
メソッドを使用することです。このメソッドは引数として SpecialFolder
列挙を受け入れ、パスを取得する特別なフォルダーを指定できます。 %AppData% ディレクトリの場合は、ApplicationData
値を使用します:
<code class="language-c#">Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)</code>
必ず必要な名前空間をコードに含めてくださいSystem
。
%AppData% は環境変数ですが、.NET では自動的に展開されません。 Environment.ExpandEnvironmentVariable
メソッドを使用してこれを明示的に行うことができます。ただし、より信頼性が高く簡単なため、引き続き GetFolderPath
を使用することをお勧めします。
例に示すように完全なファイル パスを構築するには:
<code class="language-c#">var fileName = Path.Combine(Environment.GetFolderPath( Environment.SpecialFolder.ApplicationData), "DateLinks.xml");</code>
このアプローチにより、%AppData% が環境変数として設定されていない場合でも、%AppData% への正しいパスを確実に取得できます。
以上がC# で %AppData% ディレクトリ パスに確実にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。