2009-07-29 44 views
60

Tôi đang sử dụng:tập tin tồn tại theo tên tập tin mẫu

File.Exists(filepath) 

Những gì tôi muốn làm là sự đổi chác này ra cho một mô hình, bởi vì phần đầu của những thay đổi tên tập tin.

Ví dụ: tập tin có thể là

01_peach.xml 
02_peach.xml 
03_peach.xml 

Làm thế nào tôi có thể kiểm tra nếu tập tin tồn tại dựa trên một số loại mô hình tìm kiếm?

Trả lời

98

Bạn có thể làm một danh sách thư mục với một mô hình để kiểm tra file

string[] files = System.IO.Directory.GetFiles(path, "*_peach.xml", System.IO.SearchOption.TopDirectoryOnly); 
if (files.Length > 0) 
{ 
    //file exist 
} 
49

Nếu bạn đang sử dụng .NET Framework 4 hoặc cao hơn bạn có thể sử dụng Directory.EnumerateFiles

bool exist = Directory.EnumerateFiles(path, "*_peach.xml").Any(); 

Điều này có thể hiệu quả hơn so với sử dụng Directory.GetFiles kể từ khi bạn tránh iterating trough toàn bộ danh sách tập tin .

+0

Phiên bản mã của bạn cũng giống như vậy nhưng bị ẩn. Không có cách nào để có được tất cả các tập tin phù hợp với mô hình chỉ từ không có gì. – Kostadin

+0

@Kostadin: bỏ lỡ câu trả lời này trước khi ... anh ấy không muốn nhận tất cả các tệp phù hợp với mẫu, anh ấy muốn biết liệu có bất kỳ –

Các vấn đề liên quan