Поделиться через


Path.GetInvalidPathChars Метод

Определение

Возвращает массив, содержащий символы, которые не разрешены в именах путей.

public:
 static cli::array <char> ^ GetInvalidPathChars();
public static char[] GetInvalidPathChars ();
static member GetInvalidPathChars : unit -> char[]
Public Shared Function GetInvalidPathChars () As Char()

Возвращаемое значение

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, а также канал (|) и null (\0).

Применяется к