nomefile.Contiene # (cancelletto) o '(virgoletta singola)
-
20-08-2019 - |
Domanda
In c # come posso verificare che il nome del file abbia il " cancelletto " e " segno dell'apostrofo " Questo è quanto ho provato finora ma non funziona. Devo inviare un errore se # o 'sono nel nome file
return nomefile.Contiene (" # \ '");
Soluzione
Puoi utilizzare IndexOfAny :
if (filename.IndexOfAny(new char[] {'#', '\''}) > -1)
{
// filename contains # or '
}
Altri suggerimenti
Prova qualcosa del genere:
Regex.IsMatch(fileName, @"[#']");
Prova quanto segue
bool HasBadCharacters(string fileName) {
return fileName.IndexOf('\'') >= 0 || fileName.IndexOf('#') >= 0;
}
Questo codice controllerà l'intero nome del file passato. Quindi, se hai passato un percorso completo, controllerebbe il nome del file e tutti i nomi di directory nel percorso del file. Se vuoi solo controllare il nome del file, assicurati di usare Path.GetFileName () sulla stringa prima di passarlo in HasBadCharacters.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow