Bạn không thể làm điều đó, bởi vì GetFiles
chỉ chấp nhận một mẫu tìm kiếm duy nhất. Thay vào đó, bạn có thể gọi GetFiles
không có hoa văn, và lọc các kết quả trong mã:
string[] extensions = new[] { ".jpg", ".tiff", ".bmp" };
FileInfo[] files =
dinfo.GetFiles()
.Where(f => extensions.Contains(f.Extension.ToLower()))
.ToArray();
Nếu bạn đang làm việc với .NET 4, bạn có thể sử dụng phương pháp EnumerateFiles
để tránh tải tất cả các đối tượng FileInfo trong bộ nhớ cùng một lúc :
string[] extensions = new[] { ".jpg", ".tiff", ".bmp" };
FileInfo[] files =
dinfo.EnumerateFiles()
.Where(f => extensions.Contains(f.Extension.ToLower()))
.ToArray();
Nguồn
2010-08-20 00:12:13
Tôi đoán bạn có nghĩa là "nhiều hơn một phần mở rộng" ... nó không hoạt động với hai hoặc –
yeup không làm việc cho hai hoặc – rd42
BTW, bạn có biết rằng GetFiles không liên quan đến C#, nhưng chỉ liên quan đến .NET? –