private bool IsValid() { var fn = FileNameCleaner.GetOutputFileName(this.OutputFileName); if (fn.IsNullOrWhiteSpace() || (Path.GetExtension(fn) == fn)) { outputFileNameTextBox.FocusAndBlinkBackColor(); return(false); } return(true); }
/// <summary> /// Убираем недопустимые символы в имени файла /// </summary> /// <param name="fileName">Имя файла</param> /// <param name="charLimit">Ограничение символов</param> /// <param name="replacedChar">Символ, которым замещаем недопустимые</param> /// <returns></returns> public static string RemoveBadChar(string fileName, int charLimit = 200, string replacedChar = "_") { //string result = string.Concat(FileName.Split(Path.GetInvalidFileNameChars(), StringSplitOptions.RemoveEmptyEntries)); string result = FileNameCleaner.Replace(fileName, replacedChar); if (result.Length <= charLimit) { return(result); } else { return(result.Substring(1, charLimit)); //Ограничиваем размер файла в 200 символов } }
public void ReplaceInvalidPathChars() { var fileNameCleaner = new FileNameCleaner(); Assert.AreEqual("abc_", fileNameCleaner.ReplaceInvalidPathChars("abc|", "_")); }
public void Remove_AllInvalidChars(string fileName, string expectedOutput) { var fileNameCleaner = new FileNameCleaner(); Assert.AreEqual(expectedOutput, fileNameCleaner.ReplaceAllInvalidChars(fileName)); }