菜鸟求教,C# 读取excel文件的问题,
opend.InitialDirectory = Environment.GetFolderpath(Environment.SpecialFolder.Personal);
opend.Filter = "excel2003(*.xls)|*.xls|excel2003(*.xlsx)|*.xlsx|(*.*)|*.*";//
if (opend.ShowDialog() == DialogResult.OK)
{
filename = opend.FileName;
}
Excel.Application excel = null;
Excel.Workbooks wbs = null;
Excel.Workbook wb = null;
Excel.Worksheet ws = null;
Excel.Range range1 = null;
object Nothing = System.Reflection.Missing.Value;
try
{
excel = new Excel.Application();
excel.UserControl = true;
excel.DisplayAlerts = false;
excel.Application.Workbooks.Open(filename, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing);
excel.Application.Workbooks.Add(true);//zj
wbs = excel.Workbooks;
wb = wbs[1];
ws = (Excel.Worksheet)wb.Worksheets["Sheet2"];
int rowCount = ws.UsedRange.Rows.Count;
int colCount = ws.UsedRange.Columns.Count;
for (int i = 0; i < 3; i++)//
{
object[] row = new object[4];
for (int j = 0; j < 4; j++)
{
range1 = ws.get_Range(ws.Cells[i + 2, j + 1],
ws.Cells[i + 2, j + 1]);
}
} }
finally
{
if (excel != null)
{
if (wbs != null)
{
if (wb != null)
{
if (ws != null)
{
if (range1 != null)
{
System.Runtime.InteropServices.Marshal.
ReleaseComObject(range1);
range1 = null;
}
System.Runtime.InteropServices.Marshal.
ReleaseComObject(ws);
ws = null;
}
wb.Close(false, Nothing, Nothing);
System.Runtime.InteropServices.Marshal.
ReleaseComObject(wb);
wb = null;
}
wbs.Close();
System.Runtime.InteropServices.Marshal.
ReleaseComObject(wbs);
wbs = null;
}
excel.Application.Workbooks.Close();
excel.Quit();
System.Runtime.InteropServices.Marshal.
ReleaseComObject(excel);
excel = null;
GC.Collect();
}
}
上面是本人仿照写的一段从excel读数据存到数据库的代码。
1》其中红色代码,应该是循环读数据,能解释下循环变量i和j控制什么的吗?get_rang是取什么?
for (int i = 0; i < 3; i++)//
{
object[] row = new object[4];
for (int j = 0; j < 4; j++)
{
range1 = ws.get_Range(ws.Cells[i + 2, j + 1],
ws.Cells[i + 2, j + 1]);
}
}
2》读取的数据怎么存到dataset里面去?
3》怎么读excel的数据?
相关推荐
C#操作excel(菜鸟专用)
运用c#的只是操作Excel! 编程过程中有很多的冗余的代码,笔者现在集合了多个操作excel的方法,让编程变得更加的方便!
基于C#的数据库表结构报表系统的设计与实现
为便于团队交流与系统维护,在对表的设计结构修改后,应及时更新项目技术文档。为克服现有方法存在的不足,在Visual Studio 2010环境下,基于C#编程语言,开发了一个针对SQL Server数据库表结构的报表生成系统。该系统支持单表导出和批量导出两种工作模式,支持将表结构导出到Word和Excel两种应用接口,具有操作简单、使用灵活和功能完善的优点,对提高团队开发效率和技术文档的规范性具有一定的应用价值。
菜鸟级SQL21天自学通
菜鸟级SQL21天自学通,很详细,很容易上手
MICROTOPS II手持式太阳光度计数据整理工具
解压密码:forsciense。纯福利分享,希望促进科研事业良性发展,请勿用于商业用途。曾经接触过一个可以测量气溶胶光学厚度的仪器,但是如果直接用excel或者word打开数据文件,格式很乱,研究人员无法快速从数据文件中提取所需数据。因此本菜鸟用C#做了这个小工具,用来整理数据格式,虽然一次只能处理一个数据文件,但相比人手操作来说,这个小工具的处理时间只是一瞬间。
【电池寿命预测】基于早期循环数据的随机森林模型与不确定性评估:融合袋外误差选择与保形校准的可复现技术体系 MATLAB 早期循环数据预测电池寿命|随机森林与不确定性评估
内容概要:本文档介绍了一个基于MATLAB的项目,旨在利用早期循环数据预测锂离子电池的循环寿命。项目采用随机森林回归模型,建立从电池早期五个关键特征(容量保持率、内阻、电压平台偏移、平均工作温度、库仑效率)到最终循环寿命的非线性映射。为增强预测的实用性,项目引入了基于袋外(Out-of-Bag, OOB)机制和保形预测(Conformal Prediction)的不确定性评估,生成自适应的预测区间,量化预测结果的可信度。整个流程涵盖了从模拟数据生成、模型训练与参数调优、不确定性校准到结果可视化的完整链条,并设计了可复现、防信息泄露的三阶段数据划分(训练、校准、测试),最后探讨了模型在电池研发、制造、新能源汽车和储能等领域的应用前景。; 适合人群:具备一定编程基础,熟悉MATLAB环境,对机器学习和数据分析有兴趣的研发人员、工程师和研究生。; 使用场景及目标:①利用随机森林模型,基于电池早期循环数据预测其全生命周期;②建立可量化的预测不确定性区间,为风险决策提供依据;③构建一套完整的、可复现的数据分析与模型评估流程,服务于电池的全生命周期管理。; 阅读建议:此资源以MATLAB为开发平台,通过详细的代码示例展示了从数据生成到模型部署的全过程。学习者应重点关注数据划分、袋外参数选择、保形预测区间的构建等核心模块。建议在学习时,结合文档中的理论阐述,亲手运行并调试代码,深入理解随机森林在回归任务中的应用以及不确定性评估的实现细节。


