16
2012
05

C# 根据关键词简单制作一个百度搜索的地址生成

 简单界面如下,主要有一个打开Excel文件的按钮,然后有一个生成按钮(没有打开excel文件时,是不可用的):

打开按钮的方法:

        private void btnOpen_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDailog1 = new OpenFileDialog();
            openFileDailog1.Filter = "Excel 文件(*.xls)|*.xls|Excel 文件(*.xlsx)|*.xlsx|所有文件(*.*)|*.*";
            if (openFileDailog1.ShowDialog() == DialogResult.OK)
            {
                btnCreate.Enabled = true;  //打开Excel文件时激活发送按钮
                string sFileName = openFileDailog1.FileName;
                type = openFileDailog1.FileName.Split('.')[1];
                txtFileName.Text = sFileName.ToString();
            }
        }

生成按钮的方法:

        private void btnCreate_Click(object sender, EventArgs e)
        {
            string mystring = "";
            if (type == "xls")
            {
                mystring = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'", txtFileName.Text);
            }
            else
            {
                mystring = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'", txtFileName.Text);
            }

            OleDbConnection cnnxls = new OleDbConnection(mystring);
            OleDbDataAdapter myDa = new OleDbDataAdapter("select * from [Sheet1$]", cnnxls);
            DataSet ds = new DataSet();


            string str = "";
            try
            {
                myDa.Fill(ds, "baiduKey");
                foreach (DataRow dr in ds.Tables["baiduKey"].Rows)
                {
                    if (dr["关键词"].ToString() == "")  //excel中只有一列,列名为“关键词”
                    { }
                    else
                    {
                        string gjC = dr["关键词"].ToString();

                        str = str + "http://www.baidu.com/s?wd=" + Encode(gjC) + "&rsv_spt=1&issp=1&rsv_bp=0&ie=utf-8&tn=baiduhome_pg&inputT=0" + "\r\n";  //生成一个百度搜索的地址
                    }
                }
            }
            catch
            {

            }
            rTxtBaiDuCode.Text = str;
        }

        /// <summary>
        /// 字符串编码
        /// </summary>
        /// <param name="inputData"></param>
        /// <returns></returns>
        public static string Encode(string inputData)
        {
            return HttpUtility.UrlEncode(inputData.ToString(), Encoding.UTF8);
        }

生成以后如下图:

« 上一篇下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。