2012-06-09 39 views
6

Tôi có một thư mục trong C:\Name\Folder\ và trong đó tôi có một số tệp.Liệt kê tất cả các tệp trong một thư mục - đường dẫn đầy đủ của tệp

Tôi cần hiển thị đường dẫn tệp đầy đủ của các tệp trong thư mục đó.

Nó sẽ hiển thị tất cả các tệp theo định dạng C:\Name\Folder\file.txt. Mã của tôi là như sau;

string[] filePaths = Directory.GetFiles(@"C:\Name\Folder\"); 
for (int i = 0; i < filePaths.Length; ++i) { 
    string path = filePaths[i]; 
    Console.WriteLine(System.IO.Path.GetFileName(path)); 
} 

Chỉ in tên tệp, nhưng tôi cũng cần nó để in đường dẫn đầy đủ của tệp.

Trả lời

11

Whats sai với chỉ đơn giản là in path biến?

Btw, bạn có thể lặp lại các file qua foreach tuyên bố:

foreach(var path in Directory.GetFiles(@"C:\Name\Folder\")) 
{ 
    Console.WriteLine(path); // full path 
    Console.WriteLine(System.IO.Path.GetFileName(path)); // file name 
} 
4

Sử dụng những điều sau đây,

System.IO.Path.GetFullPath(path); 
3

Nếu bạn đã có con đường trong filepaths, những gì bạn cần gọi GetFileName cho?
Nhưng dù sao, để biết như vậy, nó có thể được dễ dàng hơn để sử dụng Directory/FileInfo classes, mà có tất cả các thuộc tính cần thiết (chẳng hạn như fullpath)

4

Directory.GetFiles lợi nhuận đường dẫn đầy đủ. Bạn chỉ thấy tên tệp vì bạn gọi Path.GetFileName. Chỉ cần sử dụng path nếu bạn cần đường dẫn đầy đủ.

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