.NET でファイル パスを操作すると、予期しない二重バックスラッシュ () が表示されることがあります。 たとえば、C:\Test
はテキスト エディターでは C:\Test
として表示される場合があります。これは、特に string.Split()
を使用する場合に混乱を招く可能性があります。
鍵はエスケープ シーケンスを理解することにあります。 C# では、バックスラッシュ () はエスケープ文字です。 直後の文字の解釈を変更します。 ファイル パスでは、
\
は単一のバックスラッシュを表します。
\
構文は、最初のバックスラッシュがエスケープ文字であることを示し、2 番目のバックスラッシュを文字通りパス区切り文字として解釈できます。 エスケープがないと、最初のバックスラッシュの後の文字が誤って解釈され、パス エラーが発生します。
バックスラッシュは、文字列内の特殊文字の表現やファイル パスの処理など、さまざまな目的で .NET で頻繁に使用されます。 一般的なエスケープ シーケンスの表は次のとおりです:
Escape Sequence | Description |
---|---|
`\'` | Single quote |
`\"` | Double quote |
`\` | Backslash |
`` |
Null |
`\a` | Alert |
`\b` | Backspace |
`\f` | Form feed |
`\n` | New line |
`\r` | Carriage return |
`\t` | Horizontal tab |
`\v` | Vertical tab |
`\u` | Unicode escape (character) |
`\U` | Unicode escape (surrogate pairs) |
`\x` | Unicode escape (variable length) |
string.Split()
エスケープ シーケンスを含むパスで \
を使用しても問題は発生しません。 は単一のバックスラッシュ文字 (
以上が.NET ファイル パスに余分なスラッシュが追加されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。