C#DataGridView导入Excel数据,并上传数据

好久没来写文章了,今天和大家分享一个小操作!

因项目需要需要将财务数据导入流程数据中。项目需要解决的几个问题:1、将数据导入和上传;2、由于财务用的系统导出的数据无法阅览难读大,对账不方便,因此需要对数据汇总并做转行,以及做合计运算。本次分享是数据导入和上传的主要语句。

//引用

using System;
using System.Data;
using System.Data.SqlClient;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.OleDb;//关键
using BLL;  //上传数据接口
using Mods;// 对象


//调取数据

 private void ReadExcelData_Click(object sender, EventArgs e)
 {
       try
         {    
                OpenFileDialog FileOpen = new OpenFileDialog();
                if (FileOpen.ShowDialog() == DialogResult.OK)
                {

                    excelPath = FileOpen.FileName;
                    FileType = System.IO.Path.GetExtension(excelPath);
                }
                 FileType = System.IO.Path.GetExtension(excelPath);
                    if (FileType == ".xls")
                    {
                        sqlCon = @"Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '" + excelPath + "';Extended Properties=Excel 8.0";
                    }// 旧版本2003
                    else
                    {
                        sqlCon = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelPath + ";Extended Properties='Excel 12.0;HDR=YES;IEMX=1'";
                    }
                    string ExcelStr = "select * from [Sheet1$]";
                    showExcelContent(sqlCon, ExcelStr);            
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

//显示数据和

  private void ShowExcelContent(string ECon, string Esqlstr)
   {
            try
            {
                DataSet ds = new DataSet();
                OleDbConnection oleConn = new OleDbConnection(ECon);
                OleDbDataAdapter oleData = new OleDbDataAdapter(Esqlstr, oleConn);
                oleConn.Open();
                oleData.Fill(ds, "Info");
                oleConn.Close();
                dst = ds;//dst用于上传数据,为什么需要这个,主要是在一张表中做多数据切换上传
                InputDataGridView.DataSource = ds.Tables[0];               
            }
            catch (Exception ex)
            {
                throw new Exception("显示数据发生错误:"+ex.Message);
            }

        }

//上传数据

 private void UpLoadData()
        {         
            SqlConnection sqlCon = new SqlConnection(M_str_sqlcon);
            SqlCommand sqlCom = new SqlCommand();
            sqlCom.Connection = sqlCon;
            sqlCon.Open();
            FinanceStoreData objFSD;        
            try
            {
                if (InputStoreData.Checked)
                {
                    DialogResult result = MessageBox.Show("即将保存“入库数据“”是否确定", "提醒!!", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                    if (result == DialogResult.OK)
                    {
                        for (int i = 0; i < dst.Tables[0].Rows.Count; i++)
                        {
                            if (dst.Tables[0].Rows[i].ItemArray[0].ToString().Trim() != "")
                            {
                                objFSD = new FinanceStoreData()
                                {
                                    FinanceNO = dst.Tables[0].Rows[i].ItemArray[0].ToString().Trim(),
                                    PartMentName = dst.Tables[0].Rows[i].ItemArray[1].ToString().Trim(),
                                    StoreProcessNo = dst.Tables[0].Rows[i].ItemArray[2].ToString().Trim(),

                                   .....
                                };
                                objFinanceStoreManager.FinaceStoreData(objFSD);//上传数据
                            }
                        }
                    }

                MessageBox.Show("上传成功!");
                }

         catch (Exception ex)
            {
                throw new Exception("上传数据发生错误:"+ex.Message);
            }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值