This question already has answers here: How to recursively list all the files in a directory in C#? (23 answers) Closed 9 years ago.
I wanted to know if it is possible to get all the names of text files in a certain folder.
For example, I have a folder with the name Maps, and I would like to get the names of all the text files in that folder and add it to a list of strings.
Is it possible, and if so, how I can achieve this?
using System.IO;
DirectoryInfo d = new DirectoryInfo(@"D:\Test"); //Assuming Test is your Folder
FileInfo[] Files = d.GetFiles("*.txt"); //Getting Text files
string str = "";
foreach(FileInfo file in Files )
{
str = str + ", " + file.Name;
}
using System.IO; //add this namespace also
string[] filePaths = Directory.GetFiles(@"c:\Maps\", "*.txt",
SearchOption.TopDirectoryOnly);
Directory.GetFiles
compare to the DirectoryInfo
and FileInfo
approach?
Directory.GetFiles
will give you an array of fullpaths of the files contained in the Directory, whereas the DirectoryInfo
approach will give you an array of FileInfo
, which contains more info about each file, such as filename, extension, size, modified time, etc.
It depends on what you want to do.
ref: http://www.csharp-examples.net/get-files-from-directory/
This will bring back ALL the files in the specified directory
string[] fileArray = Directory.GetFiles(@"c:\Dir\");
This will bring back ALL the files in the specified directory with a certain extension
string[] fileArray = Directory.GetFiles(@"c:\Dir\", "*.jpg");
This will bring back ALL the files in the specified directory AS WELL AS all subdirectories with a certain extension
string[] fileArray = Directory.GetFiles(@"c:\Dir\", "*.jpg", SearchOption.AllDirectories);
Hope this helps
Does exactly what you want.
IO
is capitalized.
Take a look at Directory.GetFiles Method (String, String) (MSDN).
This method returns all the files as an array of filenames.
http://msdn.microsoft.com/en-us/library/system.io.directory.getfiles.aspx
The System.IO namespace has loads of methods to help you with file operations. The
Directory.GetFiles()
method returns an array of strings which represent the files in the target directory.
I would recommend you google 'Read objects in folder'. You might need to create a reader and a list and let the reader read all the object names in the folder and add them to the list in n loops.
Success story sharing
DirectoryInfo
andFileInfo
compare to theDirectory.GetFiles
approach?