c语言如何读取excel中的数据(C导入EXCEL数据)

C/S程序开发时经常需要进行EXCEL的数据导入,下面介绍一种简单的导入方式:,下面我们就来说一说关于c语言如何读取excel中的数据?我们一起去了解并探讨一下这个问题吧!

c语言如何读取excel中的数据(C导入EXCEL数据)

c语言如何读取excel中的数据

C/S程序开发时经常需要进行EXCEL的数据导入,下面介绍一种简单的导入方式:

一、读取EXCEL到gridControl里面

在导入数据的时候可以先将EXCEL的数据导入到gridControl控件里面,相当于一个预览功能,然后再提交到数据库。

OpenFileDialog ofg = new OpenFileDialog(); if (ofg.ShowDialog() != DialogResult.OK) return; Microsoft.VisualBasic.FileIO.TextFieldParser TF = new Microsoft.VisualBasic.FileIO.TextFieldParser(ofg.FileName, Encoding.GetEncoding("GB2312")); TF.Delimiters = new string[] { "," }; //设置分隔符 string[] strLine; int rowIndex = 0; while (!TF.EndOfData) { rowIndex ; try { strLine = TF.ReadFields(); //开始导入数据 if (rowIndex == 1) {//标题行 ConvertStringarrToDataTableTitle(strLine); } else { //数据行 ConvertStringarrToDataTable(strLine); } } catch { } } TF.Close(); this.gridControl1.DataSource = m_dt.DefaultView.ToTable(); /// <summary> /// 读取标题 /// </summary> /// <param name="title"></param> /// <returns></returns> public bool ConvertStringarrToDataTableTitle(String[] title) { //创建行向表中填充行数据 foreach (string v in title) { m_dt.Columns.Add(v, typeof(string)); } return true; } /// <summary> /// 读取行数据 /// </summary> /// <param name="value"></param> /// <returns></returns> public bool ConvertStringarrToDataTable(String[] value) { if (m_dt.Columns.Count != value.Length) return false; //创建行向表中填充行数据 if (m_dt.Columns.Count == value.Length) { DataRow row = m_dt.NewRow(); for (int i = 0; i < value.Length; i ) { row[m_dt.Columns[i].Caption] = value[i]; } m_dt.Rows.Add(row); } return true ;

二、循环提交到数据库

foreach (DataRow row in m_dt.Rows) { //执行存储将数据写入数据库 String ret = 存储名称( row["条码编号"].ToString(), row["姓名"].ToString(), row["性别"].ToString(), row["年龄"].ToString(), row["现居住地址"].ToString(), row["电话"].ToString(), row["证件号"].ToString(), row["采样时间"].ToString() ); //显示导入显示信息 DisplayInfo(ret); /// <summary> /// 导入提示 /// </summary> /// <param name="info"></param> private void DisplayInfo(String info) { memoEdit1.Text = String.Format("{0}\r\n{1}", memoEdit1.Text, info); }

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页