我对C#很陌生,我正在尝试编写一个程序,从我的计算机中打开包含多个文本文档的文件夹。我想要做的是创建一个字符串数组,用于存储每个文本文件的名称。我需要的是有人向我展示一种方法来将所有这些文本文件名存储到此数组中。任何建议或解决方案将不胜感激。
答案 0 :(得分:2)
如果所有文本文件都在同一目录中,那么这应该有帮助
DirectoryInfo DR = new DirectoryInfo(@"C:/Path_to_file");
FileInfo[] textFiles = DR.GetFiles("*.txt");
编辑: 要获取文件的名称,可以使用
List<string> fileNames = new List<string>();
foreach (FileInfo file in textFiles)
{
fileNames.Add(file.Name);
}
答案 1 :(得分:1)
我想要做的是创建一个存储名称的字符串数组 其中每个文本文件
List<string> fileNames = new List<string>();
fileNames.Add(yourFileName);
如果你想从目录中获取所有文件
List<string> fileNames= Directory.GetFiles("directorypath","*.txt").ToList();
答案 2 :(得分:1)
你有没有看过File.ReadAllLines
?您可以在文件中获取文本文件列表(逐行列出)。
string[] fileNames = File.ReadAllLines(@"C:\test\filePaths.txt");
foreach (string fileName in fileNames)
{
Console.WriteLine(fileName);
}
答案 3 :(得分:1)
发表评论后,请使用以下代码:
using System;
using System.IO;
namespace SQLiteEntityMigrator
{
class Program
{
static void Main()
{
string pathToDirectory = @"C:\Files";
System.IO.DirectoryInfo diDir = new DirectoryInfo(pathToDirectory);
System.IO.FileInfo[] files = diDir.GetFiles();
foreach (FileInfo lfileInfo in files)
{
// Work with files
Console.WriteLine(lfileInfo.Name);
}
}
}
}