我已经在整个互联网上阅读并研究了这一点,并希望现在有人可以帮我解决这个问题。我写的是读取三个不同名称的不同文本文件,但我需要通读文本文件名,以确定我必须为该特定文件执行哪种方法。这是我到目前为止,任何帮助将不胜感激。
var readers = new List<StreamReader>();
foreach (var filename in names_of_files)
{
if (do something?)
{
switch
}
}
using (StreamReader file = new StreamReader(filename))
{
(reads the file and does other stuff)
}
以下是我用来选择多个文件的方法。
private void LoadNewFile()
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Multiselect = true;
System.Windows.Forms.DialogResult dr = ofd.ShowDialog();
ofd.Filter = "Text Files(*.txt) | *.txt";
foreach (String file in ofd.FileNames)
{
if (dr == DialogResult.OK)
{
userSelectedFilePath += file;
names_of_files.Add(userSelectedFilePath);
}
}
}
答案 0 :(得分:0)
您可以循环浏览文件名,并根据文件名对其进行不同的处理。
foreach (var filename in names_of_files)
{
using (StreamReader file = new StreamReader(filename))
{
if (filename.Contains(".txt"))
{
// Process text tile
MyTextProcessingMethod(file);
}
else if (filename.Contains(".png"))
{
// Do something with the image
MyImageProcessingMethod(file);
}
else if (filename.Contains("_specialCode")) {
// Another file that has special processing based on its file name
MySpecialProcessingMethod(file);
}
}
}