HasIllegalCharacters() public static méthode

public static HasIllegalCharacters ( string path, bool checkAdditional ) : bool
path string
checkAdditional bool
Résultat bool
Exemple #1
0
        /// <summary>
        /// Checks for invalid path characters in the given path.
        /// </summary>
        /// <exception cref="System.ArgumentNullException">Thrown if the path is null.</exception>
        /// <exception cref="System.ArgumentException">Thrown if the path has invalid characters.</exception>
        /// <param name="path">The path to check for invalid characters.</param>
        internal static void CheckInvalidPathChars(string path)
        {
            if (path == null)
            {
                throw new ArgumentNullException(nameof(path));
            }

            if (PathInternal.HasIllegalCharacters(path))
            {
                throw new ArgumentException(SR.Argument_InvalidPathChars, nameof(path));
            }
        }
Exemple #2
0
        internal static void CheckInvalidPathChars(string path, bool checkAdditional = false)
        {
            if (path == null)
            {
                throw new ArgumentNullException("path");
            }

            if (PathInternal.HasIllegalCharacters(path, checkAdditional))
            {
                throw new ArgumentException(Environment.GetResourceString("Argument_InvalidPathChars"));
            }
        }
        /// <summary>
        /// Checks for invalid path characters in the given path.
        /// </summary>
        /// <exception cref="System.ArgumentNullException">Thrown if the path is null.</exception>
        /// <exception cref="System.ArgumentException">Thrown if the path has invalid characters.</exception>
        /// <param name="path">The path to check for invalid characters.</param>
        /// <param name="checkAdditional">Set to true to check for characters that are only valid in specific contexts (such as search characters on Windows).</param>
        internal static void CheckInvalidPathChars(string path, bool checkAdditional = false)
        {
            if (path == null)
            {
                throw new ArgumentNullException("path");
            }

            if (PathInternal.HasIllegalCharacters(path, checkAdditional))
            {
                throw new ArgumentException(SR.Argument_InvalidPathChars, "path");
            }
        }
Exemple #4
0
        private static string NormalizeDriveName(string driveName)
        {
            if (driveName == null)
            {
                throw new ArgumentNullException("driveName");
            }
            Contract.EndContractBlock();

            string name;

            if (driveName.Length == 1)
            {
                name = driveName + ":\\";
            }
            else
            {
                // GetPathRoot does not check all invalid characters
                if (PathInternal.HasIllegalCharacters(driveName))
                {
                    throw new ArgumentException(SR.Format(SR.Arg_InvalidDriveChars, driveName), "driveName");
                }

                name = Path.GetPathRoot(driveName);
                // Disallow null or empty drive letters and UNC paths
                if (name == null || name.Length == 0 || name.StartsWith("\\\\", StringComparison.Ordinal))
                {
                    throw new ArgumentException(SR.Arg_MustBeDriveLetterOrRootDir);
                }
            }
            // We want to normalize to have a trailing backslash so we don't have two equivalent forms and
            // because some Win32 API don't work without it.
            if (name.Length == 2 && name[1] == ':')
            {
                name = name + "\\";
            }

            // Now verify that the drive letter could be a real drive name.
            // On Windows this means it's between A and Z, ignoring case.
            char letter = driveName[0];

            if (!((letter >= 'A' && letter <= 'Z') || (letter >= 'a' && letter <= 'z')))
            {
                throw new ArgumentException(SR.Arg_MustBeDriveLetterOrRootDir);
            }

            return(name);
        }