Попробуйте следующее
bool HasBadCharacters(string fileName) {
return fileName.IndexOf('\'') >= 0 || fileName.IndexOf('#') >= 0;
}
Этот код будет проверять все переданное имя файла. Поэтому, если вы указали полный путь, он проверит имя файла и все имена каталогов в пути к файлу. Если вы просто хотите проверить имя файла, то обязательно используйте Path.GetFileName () в строке перед передачей его в HasBadCharacters.