Udostępnij za pośrednictwem


Path.GetInvalidFileNameChars Metoda

Definicja

Pobiera tablicę zawierającą znaki, które nie są dozwolone w nazwach plików.

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

Zwraca

Char[]

Tablica zawierająca znaki, które nie są dozwolone w nazwach plików.

Przykłady

W poniższym przykładzie przedstawiono metodę i metodę GetInvalidFileNameChars pobierania GetInvalidPathChars nieprawidłowych znaków.

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
' ...

Uwagi

Tablica zwrócona z tej metody nie ma gwarancji, że zawiera pełny zestaw znaków, które są nieprawidłowe w nazwach plików i katalogów. Pełny zestaw nieprawidłowych znaków może się różnić w zależności od systemu plików. Na przykład na platformach klasycznych opartych na systemie Windows nieprawidłowe znaki ścieżki mogą zawierać znaki ASCII/Unicode od 1 do 31, a także cudzysłów ("), mniejsze niż (), większe niż<> (), potok (|), backspace (\b), null (\0) i kartę (\t).

Dotyczy