当前位置:  编程技术>.net/c#/asp.net
本页文章导读:
    ▪asp.net Gridview分页保存选项       代码如下:#region //'Revision: 1.00 Created Date: 2013/08/02 Created ID: Una [#1300071]增加多選框        /// <summary>        /// Session獲取多選框值        /// </summary>        private void Rem.........
    ▪vs2010根据字符串内容添加断点的方法介绍       在vs中我们可以直接用表达式。数值型比较直接用操作符即可。 如i==2,i<2; 但是字符型比较呢? 加入我们有一个名为string的变量,定义如下: char *string="Two"; 设置断点: 当我们运行上述代.........
    ▪C# 实现抓取网站页面内容的实例方法       抓取新浪网的新闻栏目,如图所示: 使用 谷歌浏览器的查看源代码: 通过分析得知,我们所要找的内容在以下两个标签之间: 代码如下:<!-- publish_helper name='要闻-新闻' p_id='1' t_id='850' d_i.........

[1]asp.net Gridview分页保存选项
    来源: 互联网  发布时间: 2013-11-30

代码如下:

#region //'Revision: 1.00 Created Date: 2013/08/02 Created ID: Una [#1300071]增加多選框
        /// <summary>
        /// Session獲取多選框值
        /// </summary>
        private void RememberOldValues()
        {
            ArrayList categoryIDList = new ArrayList();
            string index = "";
            foreach (GridViewRow row in gridView.Rows)
            {
                index = (string)gridView.DataKeys[row.RowIndex].Value;
                bool result = ((CheckBox)row.FindControl("DeleteThis")).Checked;

                // Check in the Session
                if (Session["id"] != null)
                    categoryIDList = (ArrayList)Session["id"];
                if (result)
                {
                    if (!categoryIDList.Contains(index))
                        categoryIDList.Add(index);
                }
                else
                    categoryIDList.Remove(index);
            }
            if (categoryIDList != null && categoryIDList.Count > 0)
                Session["id"] = categoryIDList;
        }

        /// <summary>
        /// Session分頁時之前多選框為true
        /// </summary>
        private void RePopulateValues()
        {
            ArrayList categoryIDList = (ArrayList)Session["id"];
            if (categoryIDList != null && categoryIDList.Count > 0)
            {
                foreach (GridViewRow row in gridView.Rows)
                {
                    string index = (string)gridView.DataKeys[row.RowIndex].Value;
                    if (categoryIDList.Contains(index))
                    {
                        CheckBox myCheckBox = (CheckBox)row.FindControl("DeleteThis");
                        myCheckBox.Checked = true;
                    }
                }
            }
        }
        #endregion


代码如下:

protected void gridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            RememberOldValues();
            gridView.PageIndex = e.NewPageIndex;
            BindData();
            RePopulateValues();
        }

代码如下:

protected void btnSelect_Click(object sender, EventArgs e)
        {
            string items = "";
            ArrayList categoryIDList = new ArrayList();
            string index ="";
            foreach (GridViewRow row in gridView.Rows)
            {
                index = (string)gridView.DataKeys[row.RowIndex].Value;
                bool result = ((CheckBox)row.FindControl("DeleteThis")).Checked;

                // Check in the Session
                if (Session["id"] != null)
                    categoryIDList = (ArrayList)Session["id"];
                if (result)
                {
                    if (!categoryIDList.Contains(index))
                        categoryIDList.Add(index);
                }
                else
                    categoryIDList.Remove(index);
            }
            if (categoryIDList != null && categoryIDList.Count > 0)
                for (int i = 0; i < categoryIDList.Count; i++)
                {
                    items += categoryIDList[i] + ",";
                }
            items = items.Substring(0, items.Length - 1);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "", "check('" + items + "');", true);
            Session.Remove("id");
        }


    
[2]vs2010根据字符串内容添加断点的方法介绍
    来源: 互联网  发布时间: 2013-11-30

在vs中我们可以直接用表达式。数值型比较直接用操作符即可。

如i==2,i<2;

但是字符型比较呢?

加入我们有一个名为string的变量,定义如下:

char *string="Two";

设置断点:

当我们运行上述代码时,会发现即使string的内容”Two”时,运行并没有中断。这是因为==运算符比较的是两个字符串的地址而不是内容,因此上述断点并不能满足我们的需求。(字符串名就是地址)

Visual Studio考虑到程序员经常会根据字符串的内容添加断点,因此在添加断点这个功能上为字符串做了特殊的支持。我们在根据字符串内容添加断点时,可以使用strcmp等函数来设置断点。

于是在上述示例中,我们可以用strcmp函数来添加如下断点:

Visual Studio中的添加断点功能中支持的字符串函数有:

strlen, wcslen, strnlen, wcsnlen, strcmp, wcscmp, _stricmp,_wcsicmp, strncmp, wcsncmp, _strnicmp, _wcsnicmp, strchr, wcschr, strstr, wcsstr


    
[3]C# 实现抓取网站页面内容的实例方法
    来源: 互联网  发布时间: 2013-11-30

抓取新浪网的新闻栏目,如图所示:

使用 谷歌浏览器的查看源代码: 通过分析得知,我们所要找的内容在以下两个标签之间:

代码如下:

<!-- publish_helper name='要闻-新闻' p_id='1' t_id='850' d_id='1' -->

内容。。。。

<!-- publish_helper name='要闻-财经' p_id='30' t_id='98' d_id='1' -->


如图所示:

内容。。。。

使用VS建立一个如图所示的网站:

我们下载网络数据主要通过   WebClient 类来实现。

使用下面源代码获取我们选择的内容:

代码如下:

protected void Enter_Click(object sender, EventArgs e)
        {
            WebClient we = new WebClient();  //主要使用WebClient类
            byte[] myDataBuffer;
            myDataBuffer = we.DownloadData(txtURL.Text);  //该方法返回的是 字节数组,所以需要定义一个byte[]
            string download = Encoding.Default.GetString(myDataBuffer);  //对下载的数据进行编码

          
            //通过查询源代码,获取某两个值之间的新闻内容
            int startIndex = download.IndexOf("<!-- publish_helper name='要闻-新闻' p_id='1' t_id='850' d_id='1' -->");
            int endIndex = download.IndexOf("<!-- publish_helper name='要闻-财经' p_id='30' t_id='98' d_id='1' -->");

            string temp = download.Substring(startIndex, endIndex - startIndex + 1);  //截取新闻内容

            lblMessage.Text = temp;//显示所截取的新闻内容
        }


效果如图:

最后: 除了把下载的数据保存为文本以外,还可以保存为 文件类型 和 流 类型。

代码如下:

WebClient wc = new WebClient();
            wc.DownloadFile(TextBox1.Text, @"F:\test.txt");
            Label1.Text = "文件下载完成";

代码如下:

WebClient wc = new WebClient();
            Stream  s =  wc.OpenRead(TextBox1.Text);

            StreamReader sr = new StreamReader(s);
            Label1.Text =  sr.ReadToEnd();

    
最新技术文章:
▪C#通过IComparable实现ListT.sort()排序
▪C#实现对Json字符串处理实例
▪Winform实现抓取web页面内容的方法
▪Winform实现将网页生成图片的方法
▪C#控制台程序中处理2个关闭事件的代码实例
▪WinForm实现同时让两个窗体有激活效果的特效...
▪WinForm实现拦截窗体上各个部位的点击特效实...
▪用C#的params关键字实现方法形参个数可变示例
▪C#判断某程序是否运行的方法
▪C#验证码识别基础方法实例分析
▪C#通过WIN32 API实现嵌入程序窗体
▪C#实现获取鼠标句柄的方法
▪C#事件处理和委托event delegate实例简述
▪C#获取程序文件相关信息的方法
▪C#中的除法运算符与VB.NET中的除法运算符
▪ASP.NET MVC 5使用X.PagedList.Mvc进行分页教程(PagedLi...
▪Base64编码解码原理及C#编程实例
▪C#实现的优酷真实视频地址解析功能(2014新算...
▪C#和SQL实现的字符串相似度计算代码分享
▪C#使用Word中的内置对话框实例
▪C#反射之基础应用实例总结
▪C#生成单页静态页简单实例
▪C#实现SMTP邮件发送程序实例
▪C#实现随鼠标移动窗体实例
▪C#使用GDI+创建缩略图实例
▪C#实现通过模板自动创建Word文档的方法
▪C#中Response.Write常见问题汇总
▪C#中多态、重载、重写区别分析
▪WinFrom中label背景透明的实现方法
▪C#中out保留字用法实例分析
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3