Directory.GetFiles dosyasını yalnızca sayısal bir değerle başlayan dosyaları göstermesi için nasıl edinebilirim (örn. 1abc.pdf);Directory.GetFiles: Yalnızca sayısal bir değerden başlayan dosyaları göster
Directory.GetFiles(@"C:/mydir", "0-9*.pdf")
Directory.GetFiles dosyasını yalnızca sayısal bir değerle başlayan dosyaları göstermesi için nasıl edinebilirim (örn. 1abc.pdf);Directory.GetFiles: Yalnızca sayısal bir değerden başlayan dosyaları göster
Directory.GetFiles(@"C:/mydir", "0-9*.pdf")
ile başlayan olanlara filtrelemek için bir LINQ sorgusu kullanmaktır i `var CurrentPage = Directory.GetFiles (filePath, startChar + "* .pdf") benim "gerçek" ifadesi, içine dahil etmek zorunda ne olur
var files = Directory.GetFiles(@"c:\mydir", "*.pdf")
.Where(file => Regex.IsMatch(Path.GetFileName(file), "^[0-9]+"));
//.ToArray() <-add if you want a string array instead of IEnumerable
Bunu doğrudan arama düzeninde belirtmenin bir yolu yoktur. Yetenekleri oldukça sınırlıdır (çoğunlukla *
joker karakterini destekler). Bunu başarmanın en iyi yolu sayısına bakılmaksızın *.pdf
filtre uygulamak ve daha sonra ile herhangi sayısal değeri başlatmak dosyalarını edinmek için bir rakam
Directory
.GetFiles(@"c:\mydir", "*.pdf")
.Where(x => Char.IsDigit(Path.GetFileName(x)[0]));
: basamak, bir normal ifade kullanabilirsiniz .Skip ((pageNum - 1) * pageSize) .Take (pageSize) .Select (yol => yeni FileInfo (yol)) ToArray(); '? Arkasındaki mantık, bir alfa çağrı cihazı (A, B, C .. vb. Ve ayrıca bir 0-9 bağlantı) sahip olduğumdan dolayı, listede gösterilen özel startchar'ı (alfa veya sayısal) seçebilmek istiyorum. . Yukarıdaki sadece alfa karakterleri ile iyi çalışır. – brother
Bu harika çalışıyor - thx! Yani, bunu hem alfa hem de sayısal aramayı kabul eden tek bir ifadeye nasıl dahil edebileceğimi biliyor musunuz? IE aşağıdaki var olan bir tane var var currentPage = Directory.GetFiles (filePath, startChar + "* .pdf") Atla ((pageNum - 1) * pageSize) .Take (pageSize) .Select (yol => new FileInfo (. yolu)) ToArray(); '. Burada eklediğiniz deyim ile var currentPage = Directory.GetFiles (filePath, startChar + "* .pdf"). (Dosya => Regex.IsMatch (Yol.GetFileName (dosya), "^ [0-9] +") .Skip ((pageNum - 1) * pageSize) .Take (pageSize) .Select (yol => yeni FileInfo (yol)) ToArray(); '. – brother