Pergunta

I have an array that stores files from a directory:

    string pathToDirectory = @"C:\files";
    System.IO.DirectoryInfo diDir = new DirectoryInfo(pathToDirectory);
    System.IO.FileInfo[] File_Array = diDir.GetFiles();

    foreach (FileInfo lfileInfo in File_Array)
    {
    }   

I want to try and convert this array into a string type array instead of a FileInfo type. Please let me know how I can go about doing this. Any help would be greatly appreciated.

Foi útil?

Solução

Use static Directory class instead. It returns files as strings instead of instantiating FileInfo instances which you don't need

string[] files = Directory.GetFiles(pathToDirectory);

If you want just file names without path, then use Path to get rid of directory path:

var fileNames = Directory.GetFiles(pathToDirectory)
                         .Select(Path.GetFileName);

Outras dicas

string[] fileNames = File_Array.Select(f => f.Name).ToArray();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top