C# 生成标准exl文件

// 创建一个新的 DataTable
            DataTable dataTable = new DataTable();

            // 添加列到 DataTable
            dataTable.Columns.Add("ID", typeof(int));
            dataTable.Columns.Add("Name", typeof(string));
            dataTable.Columns.Add("Age", typeof(int));

            // 向 DataTable 中添加行数据
            dataTable.Rows.Add(1, "John Doe", 25);
            dataTable.Rows.Add(2, "Jane Smith", 30);
            dataTable.Rows.Add(3, "Mike Johnson", 40);
            var workbook = new HSSFWorkbook(); // or XSSFWorkbook() if you want to create an xlsx file
            ISheet sheet = workbook.CreateSheet("Sheet1");
            int rowIndex = 1;
            // 创建表头行
            var headerRow = sheet.CreateRow(0);
            #region 生成表头
            for (int i = 0; i < dataTable.Columns.Count; i++)
            {
                var tableColumn = dataTable.Columns[i];
                var cell = headerRow.CreateCell(i);
                cell.SetCellValue(tableColumn.ColumnName);
                cell.CellStyle = workbook.CreateCellStyle();
            }
            #endregion
            foreach (DataRow row in dataTable.Rows)
            {
                IRow excelRow = sheet.CreateRow(rowIndex++);
                int columnIndex = 0;
                foreach (object item in row.ItemArray)
                {
                    ICell cell = excelRow.CreateCell(columnIndex++);
                    cell.SetCellValue((item ?? "").ToString());
                }
               
            }
            System.Windows.Forms.FolderBrowserDialog folderBrowser = new FolderBrowserDialog();
            string selectedPath = "";
            if (folderBrowser.ShowDialog() == DialogResult.OK)
            {
                selectedPath = folderBrowser.SelectedPath;

                Console.WriteLine("所选择的文件夹路径为:" + selectedPath);
            }
            else {
                return;
            }
            FileStream fs = File.OpenWrite($@"{selectedPath}\output.xls"); // or ".xlsx" extension if needed
            workbook.Write(fs);
            fs.Close();

你可能感兴趣的:(c#,开发语言)