Path.GetInvalidFileNameChars Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает массив, содержащий символы, которые не разрешены в именах файлов.
public:
static cli::array <char> ^ GetInvalidFileNameChars();
public static char[] GetInvalidFileNameChars ();
static member GetInvalidFileNameChars : unit -> char[]
Public Shared Function GetInvalidFileNameChars () As Char()
Возвращаемое значение
Массив, содержащий символы, которые не разрешены в именах файлов.
Примеры
В следующем примере демонстрируется GetInvalidFileNameChars метод и GetInvalidPathChars метод для извлечения недопустимых символов.
using namespace System;
using namespace System::IO;
namespace PathExample
{
public ref class GetCharExample
{
public:
static void Main()
{
// Get a list of invalid path characters.
array<Char>^ invalidPathChars = Path::GetInvalidPathChars();
Console::WriteLine("The following characters are invalid in a path:");
ShowChars(invalidPathChars);
Console::WriteLine();
// Get a list of invalid file characters.
array<Char>^ invalidFileChars = Path::GetInvalidFileNameChars();
Console::WriteLine("The following characters are invalid in a filename:");
ShowChars(invalidFileChars);
}
static void ShowChars(array<Char>^ charArray)
{
Console::WriteLine("Char\tHex Value");
// Display each invalid character to the console.
for each (Char someChar in charArray)
{
if (Char::IsWhiteSpace(someChar))
{
Console::WriteLine(",\t{0:X4}", (Int16)someChar);
}
else
{
Console::WriteLine("{0:c},\t{1:X4}", someChar, (Int16)someChar);
}
}
}
};
};
int main()
{
PathExample::GetCharExample::Main();
}
// Note: Some characters may not be displayable on the console.
// The output will look something like:
//
// The following characters are invalid in a path:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
//
// The following characters are invalid in a filename:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
using System;
using System.IO;
namespace PathExample
{
class GetCharExample
{
public static void Main()
{
// Get a list of invalid path characters.
char[] invalidPathChars = Path.GetInvalidPathChars();
Console.WriteLine("The following characters are invalid in a path:");
ShowChars(invalidPathChars);
Console.WriteLine();
// Get a list of invalid file characters.
char[] invalidFileChars = Path.GetInvalidFileNameChars();
Console.WriteLine("The following characters are invalid in a filename:");
ShowChars(invalidFileChars);
}
public static void ShowChars(char[] charArray)
{
Console.WriteLine("Char\tHex Value");
// Display each invalid character to the console.
foreach (char someChar in charArray)
{
if (Char.IsWhiteSpace(someChar))
{
Console.WriteLine(",\t{0:X4}", (int)someChar);
}
else
{
Console.WriteLine("{0:c},\t{1:X4}", someChar, (int)someChar);
}
}
}
}
}
// Note: Some characters may not be displayable on the console.
// The output will look something like:
//
// The following characters are invalid in a path:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
//
// The following characters are invalid in a filename:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
Imports System.IO
Namespace PathExample
Public Class GetCharExample
Public Shared Sub Main()
' Get a list of invalid path characters.
Dim invalidPathChars() As Char = Path.GetInvalidPathChars()
Console.WriteLine("The following characters are invalid in a path:")
ShowChars(invalidPathChars)
Console.WriteLine()
' Get a list of invalid file characters.
Dim invalidFileChars() As Char = Path.GetInvalidFileNameChars()
Console.WriteLine("The following characters are invalid in a filename:")
ShowChars(invalidFileChars)
End Sub
Public Shared Sub ShowChars(charArray As Char())
Console.WriteLine("Char" + vbTab + "Hex Value")
' Display each invalid character to the console.
For Each someChar As Char In charArray
If Char.IsWhiteSpace(someChar)
Console.WriteLine("," + vbTab + "{0:X4}", _
Microsoft.VisualBasic.Asc(someChar))
Else
Console.WriteLine("{0:c}," + vbTab +"{1:X4}", someChar, _
Microsoft.VisualBasic.Asc(someChar))
End If
Next someChar
End Sub
End Class
End Namespace
' Note: Some characters may not be displayable on the console.
' The output will look something like:
'
' The following characters are invalid in a path:
' Char Hex Value
' ", 0022
' <, 003C
' >, 003E
' |, 007C
' ...
'
' The following characters are invalid in a filename:
' Char Hex Value
' ", 0022
' <, 003C
' >, 003E
' |, 007C
' ...
Комментарии
Массив, возвращаемый этим методом, не гарантирует, что содержит полный набор символов, недопустимых в именах файлов и каталогов. Полный набор недопустимых символов может отличаться в зависимости от файловой системы. Например, на классических платформах Windows недопустимые символы пути могут включать символы ASCII/Юникода от 1 до 31, а также кавычки (), меньше (<), больше (>), канала (|), backspace (\b), null (\0) и табуляции (\t).