c# - 读取多个excel文件

标签 c# excel

我是 CSharp 编程的新手。我需要从一个文件夹中读取多个 excel 文件。我不知道该文件夹中的 excel 文件的数量。我想一个一个地阅读所有文件。为了读取一个文件,我编写了一些代码。我想应用此代码逐一读取文件夹中的所有文件。请告诉我路。这是我的代码。

class RatWalk
{
    public List<RatStep> steps = new List<RatStep>();
    string[] Individal_Runs = Directory.GetFiles(@"C:\Users\AG_Winter\Desktop\Individual_Runs");
    public void LoadFromFile(String fileName) // reads data from excel file
    {
        steps.Clear();
        XlsFile file = new XlsFile(fileName);
        try
        {
           // Everything I wanna do
        }
        catch (NullReferenceException ex)
        {
            Console.Out.WriteLine("No run");
        }
    }
}

谢谢大家。我不知道如何回复帖子,因为评论应该限制在字符数内。所以我在这里输入它。

在我的程序中,我想从一个文件夹中一个一个地读取 xlsx 文件。到目前为止,我正在使用一个按钮来浏览单个文件。但是后来我想使用这个按钮来浏览我有文件的文件夹。这样当我选择这个文件夹时,程序应该自动运行文件夹中的所有文件,一个接一个。这是我之前所做的。

[\code = c#] RatWalk类 { public List steps = new List();

    public void LoadFromFile(String fileName)                       // reads data from excel file
    {

            steps.Clear();

            XlsFile file = new XlsFile(fileName);
try{
//everything I wanna do

}捕捉{}

 private void InitializeComponent()                             
        {
            EventHandler handler = new EventHandler(OnClick);
            button.Text = "Browse for the XLS file";                    
            // button properties                                       
            this.Controls.Add(button);
}
private void OnClick(object sender, EventArgs e)            // Browses for the file and loads the selected Excel file
        {
            OpenFileDialog fileDialog = new OpenFileDialog();
            if (fileDialog.ShowDialog() != DialogResult.OK)
                return;
            ratWalk.LoadFromFile(fileDialog.FileName);

           // Whatever I wanna do   
        }

在这里,我想改变它,当我点击按钮并选择文件夹时,它应该一个一个地运行文件夹中的所有文件。

请告诉我该怎么做。

谢谢。

最佳答案

我会给你指出一个例子,剩下的就交给你了。

string [] fileEntries = Directory.GetFiles(sourceDir);
foreach(string fileName in fileEntries)
{
   // do something with fileName
   Console.WriteLine(fileName);
}

顺便说一句,这不会遍历子文件夹。

关于c# - 读取多个excel文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13913528/

相关文章:

c# - 命令(ICommand)和点击事件的区别

c# - 如何使用 Excel Interop 获取 CustomDocumentProperties?

excel - 将签名添加到电子邮件

c# - Html 不会通过 Html Agility Pack 更新

excel - 我如何知道我单击的已分配宏的图像的名称

excel - 为什么我的代码没有遍历 word 文档中的表格?

excel - 打开 CSV 文件

c# - 嵌套类中的 Automapper 映射成员

c# - 保护条款不触发

c# - 将委托(delegate)传递给 WPF WebBrowser.InvokeScript 方法