C# 读写EXcel

    private void WriteForTxtExceInsert()
    {
        //打开文件
        //string strEMI = "864814043523934";
        //string strCCID = "89861118242001395686";
        string SaveExcelCode;
        SaveExcelCode = ".\\SaveExcelCode.xls";
        string strEMI = "";
        string strCCID = "";
        string strHostName = Environment.GetEnvironmentVariable("computername");
        string strLocalDate = DateTime.Now.ToLocalTime().ToString();
        Debug.WriteLine(strLocalDate);
        Debug.WriteLine(strHostName);

        strEMI = ReadIMEIDevAddr_textBox.Text;
        strCCID = strCCIDDevAddr;

        if (strEMI.Equals("") || strCCID.Equals("") || textBoxMAddr.Text.Equals(""))
        {
            MessageBox.Show("请检查EMI CCID 表号"+strEMI + strCCID + textBoxMAddr.Text);
            return;
        } 
        else
        {
        }

        int index = this.dataGridView2.Rows.Add();//获取新的一行

        this.dataGridView2.Rows[index].Cells[0].Value =strEMI;
        this.dataGridView2.Rows[index].Cells[1].Value = textBoxMAddr.Text;
        this.dataGridView2.Rows[index].Cells[2].Value=strCCID;


        string fileSuffix = System.IO.Path.GetExtension(SaveExcelCode);

        if (string.IsNullOrEmpty(fileSuffix))
            return;

        using (DataSet ds = new DataSet())
        {

            //判断Excel文件是2003版本还是2007版本
            string connString = "";

            if (fileSuffix == ".xls")
                connString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + SaveExcelCode + ";" + ";Extended Properties=\"Excel 8.0;HDR=YES;IMEX=0\"";
            else
                connString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + SaveExcelCode + ";" + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=0\"";

            string sql_select;
            //读取文件
            if (!fileExist(SaveExcelCode))
            {
                using (OleDbConnection conn = new OleDbConnection(connString))
                using (OleDbCommand oc = new OleDbCommand())//表示要对数据源执行的SQL语句或存储过程
                {
                    conn.Open();

                    oc.CommandType = CommandType.Text;//设置命令的类型
                    oc.Connection = conn;//设置命令的连接

                    sql_select = "CREATE TABLE [Sheet1](IMEI varchar(18),表地址 varchar(16),CCID varchar(30),日期时间 varchar(25),操作电脑名称 varchar(50))";
                    oc.CommandText = sql_select;//设置命令的文本
                    int x = oc.ExecuteNonQuery();//执行SQL语句
                    conn.Close();

                }
            }

            using (OleDbConnection conn = new OleDbConnection(connString))
            using (OleDbCommand oc = new OleDbCommand())//表示要对数据源执行的SQL语句或存储过程
            {
                conn.Open();

                oc.CommandType = CommandType.Text;//设置命令的类型
                oc.Connection = conn;//设置命令的连接

                sql_select = string.Format("SELECT COUNT(*) FROM [Sheet1$] WHERE IMEI ='{0}'", strEMI);
                oc.CommandText = sql_select;//设置命令的文本
                int x = oc.ExecuteNonQuery();//执行SQL语句
                x= (int)oc.ExecuteScalar();
                Debug.WriteLine(x);
                conn.Close();

                if (x>0)
                {
                    MessageBox.Show("请检查EMI ,该设备已设置表号!--" + strEMI);
                    return;
                }
                else
                {
                }
                
            }

            using (OleDbConnection conn = new OleDbConnection(connString))
            using (OleDbCommand oc = new OleDbCommand())//表示要对数据源执行的SQL语句或存储过程
            {
                conn.Open();

                oc.CommandType = CommandType.Text;//设置命令的类型
                oc.Connection = conn;//设置命令的连接

                sql_select = string.Format("INSERT INTO [Sheet1$](IMEI,表地址,CCID,日期时间,操作电脑名称) VALUES('{0}','{1}','{2}','{3}','{4}')", strEMI, textBoxMAddr.Text, strCCID, strLocalDate, strHostName);
                oc.CommandText = sql_select;//设置命令的文本
                int x = oc.ExecuteNonQuery();//执行SQL语句

                conn.Close();
            }

        }

    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值