• 读取EXCEL的办法


    private void button9_Click(object sender, EventArgs e)
            {
                var folder =new FolderBrowserDialog();
                if (folder.ShowDialog() == DialogResult.OK)
                {
                    GetAllDirList(folder.SelectedPath);
    
                    var SixCount = 0;
                    var SevenCount = 0;
                    var sixsb = new StringBuilder();
                    var sevensb = new StringBuilder();
    
                    for (var i = 0; i < fl.Count; i++)
                    {
                        var six = false;
                        var seven = false;
    
                        var fi = (FileInfo)fl[i];
                        var dataTable = ReadExcel(fi.FullName);
    
                        for (var k = 0; k < dataTable.Rows.Count; k++)
                        {
                            if (dataTable.Columns.Count == 6)
                            {
                                var a0 = dataTable.Rows[k][0].ToString();
                                var a1 = dataTable.Rows[k][1].ToString();
                                var a2 = dataTable.Rows[k][2].ToString();
                                var a3 = dataTable.Rows[k][3].ToString();
                                var a4 = dataTable.Rows[k][4].ToString();
                                var a5 = dataTable.Rows[k][5].ToString();
    
                                if ((a0 == "") || (a1 == "") || (a2 == "") || (a3 == "") || (a4 == "") || (a5 == ""))
                                {
                                    continue;
                                }
                                six = true;
                                sixsb.Append(dataTable.Columns[0].ColumnName + "  " + dataTable.Columns[1].ColumnName + "  " + dataTable.Columns[2].ColumnName + "  " + dataTable.Columns[3].ColumnName + "  " + dataTable.Columns[4].ColumnName + "  " + dataTable.Columns[5].ColumnName);
                                sixsb.Append("
    ");
                                sixsb.Append(a0 + "  " + a1 + "  " + a2 + "  " + a3 + "  " + a4 + "  " + a5);
                                sixsb.Append("
    ");
                            }
    
                            if (dataTable.Columns.Count == 7)
                            {
                                var a0 = dataTable.Rows[k][0].ToString();
                                var a1 = dataTable.Rows[k][1].ToString();
                                var a2 = dataTable.Rows[k][2].ToString();
                                var a3 = dataTable.Rows[k][3].ToString();
                                var a4 = dataTable.Rows[k][4].ToString();
                                var a5 = dataTable.Rows[k][5].ToString();
                                var a6 = dataTable.Rows[k][6].ToString();
    
                                if ((a0 == "") || (a1 == "") || (a2 == "") || (a3 == "") || (a4 == "") || (a5 == "") || (a6 == ""))
                                {
                                    continue;
                                }
                                seven = true;
    
                                sevensb.Append(dataTable.Columns[0].ColumnName + "  " + dataTable.Columns[1].ColumnName + "  " + dataTable.Columns[2].ColumnName + "  " + dataTable.Columns[3].ColumnName + "  " + dataTable.Columns[4].ColumnName + "  " + dataTable.Columns[5].ColumnName + "  " + dataTable.Columns[6].ColumnName);
                                sixsb.Append("
    ");
                                sevensb.Append(a0 + "  " + a1 + "  " + a2 + "  " + a3 + "  " + a4 + "  " + a5 + "  " + a6);
                                sevensb.Append("
    ");
                            }
                        }
                        if (six) SixCount++;
                        if (seven) SevenCount++;
    
                        Program.MyFrm.SetTextMessage("SixCount:" + SixCount);
                        Program.MyFrm.SetTextMessage("SevenCount:" + SevenCount);
    
                        Program.MyFrm.SetTextMessage("========以下为六个字段的信息======================================");
                        Program.MyFrm.SetTextMessage(sixsb.ToString());
    
                        Program.MyFrm.SetTextMessage("========以下为七个字段的信息======================================");
                        Program.MyFrm.SetTextMessage(sevensb.ToString());
                    }
                }
            }
            private static DataTable ReadExcel(string strFileName)
            {
                var book = new Workbook(strFileName);
                var sheet = book.Worksheets[0];
                var cells = sheet.Cells;
    
                return cells.ExportDataTableAsString(0, 0, cells.MaxDataRow + 1, cells.MaxDataColumn + 1, true);
            }
            private static ArrayList fl = new ArrayList();
            //我把ArrayList当成动态数组用,非常好用
            private static void GetAllDirList(string strBaseDir)
            {
                fl.Clear();
    
                var di = new DirectoryInfo(strBaseDir);
                var diA = di.GetDirectories();
                var fiA = di.GetFiles();//获得了所有起始目录下的文件
    
                for (var i = 0; i < fiA.Length; i++)
                {
                    fl.Add(fiA[i]);
                }
                for (var i = 0; i < diA.Length; i++)
    
                {
                    GetAllDirList(diA[i].FullName);
                }
            }
  • 相关阅读:
    祝大家光棍节快乐!
    [Spring] Oracle TopLink O/R Mapping integrates Spring.
    VS2005 vs Eclipse, functions i expected.
    [English] Adverb for link (Chinese)
    有几个Gmail的Invitation
    Experience online service of MS small business (bCentral)
    多态(Polymorphism)
    Check your site and build meta tags for search engines
    关于怎样用javascript判断网页上我们想要必须选择的复选框至少选择一个的问题
    关于在VS2010中学习c++的MFC
  • 原文地址:https://www.cnblogs.com/littlehb/p/5667559.html
Copyright © 2020-2023  润新知