Bu küçük yöntemi, subj. Içindeki hedefe ulaşmak için yazdım, ancak bunu yapmanın daha verimli (daha basit) yolu var mı ? Umarım bu, benim yaptığım gibi bunu araştıracak birine yardım edebilir.Geçersiz (izin verilmeyen, bozuk) karakterleri DosyaAdı'ndan (veya Dizin, Klasör, Dosya) kaldırın
var fileName = new System.Text.StringBuilder();
fileName.Append("*Bad/\ :, Filename,? ");
// get rid of invalid chars
while (fileName.ToString().IndexOfAny(System.IO.Path.GetInvalidFileNameChars()) > -1)
{
fileName = fileName.Remove(fileName.ToString().IndexOfAny(System.IO.Path.GetInvalidFileNameChars()), 1);
}
? sözü
public string StripInvalidChars(string filename) {
return new String(
filename.Except(System.IO.Path.GetInvalidFileNameChars()).ToArray()
);
}
, ben JaredPar solüsyonu ile gitmek istiyorum: Eğer basit derken siz "özlü" için bakarsak
invalid.Contains (cur) .NET 4. benim için çalışmıyor gibi görünmüyor. "Özel yöntem buraya erişilemiyor" iletisi var. Aşağıda yayınlanan başka bir örnekle geldi. –
Sistem.Linq kullanarak ekleyin. – user565710