ECS/mod/ExcelExport.cs
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Data;
using System.Reflection;
using System.IO;
using System.Runtime.InteropServices;
using System.Windows.Forms;
public class ExcelExport
{
public string ToExcel(DataGridView dgv, DataSet ds, string folderpath, string FirstRowName)
{
if (dgv.Rows.Count == 0)
return "无数据可导出,请先查询出数据,再导出!";
DataTable dt = GetData(dgv, ds.Tables[0], FirstRowName);
return Export(dt, folderpath);
}
private DataTable GetData(DataGridView dgv, DataTable olddt, string FirstRowName)
{
System.Data.DataTable dt = new System.Data.DataTable();
dt.TableName = FirstRowName;
for (int i = 0; i < dgv.Columns.Count; i++)
{
DataColumn dc = new DataColumn();
string controlID = dgv.Columns[i].Name;
//dc.ColumnName = controlID.Substring(3, controlID.Length - 3);
dc.ColumnName = controlID;
dc.Caption = dgv.Columns[i].HeaderText.ToString();
dc.DataType = typeof(System.String);
dt.Columns.Add(dc);
}
foreach (DataRow dr in olddt.Rows)
{
DataRow dtdr = dt.NewRow();
for (int i = 0; i < dt.Columns.Count; i++)
{
dtdr[i] = dr[dt.Columns[i].ColumnName];
}
dt.Rows.Add(dtdr);
}
return dt;
}
public string Export(DataTable dt, string folderpath)
{
string result = "导出失败!"; //默认返回值
int seriesIndex = 0;
int rowIndex = 0;
int seriesCount = dt.Columns.Count;
int rowCount = dt.Rows.Count;
if (rowCount == 0)
{
result = "没有可导出的数据!";
}
Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
后面还有 83 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。