zoukankan      html  css  js  c++  java
  • xml數據

    <Books>
    <Books>
    <BookId>102</BookId>
    <BookName>C++</BookName>
    <BookPrice>39</BookPrice>
    <Supplier>Phei</Supplier>
    </Books>
    <Books>
    <BookId>103</BookId>
    <BookName>VB</BookName>
    <BookPrice>52.2</BookPrice>
    <Supplier>Pe</Supplier>
    </Books>
    <Books>
    <BookId>105</BookId>
    <BookName>Build C++</BookName>
    <BookPrice>123</BookPrice>
    <Supplier>ww</Supplier>
    </Books>
    </Books>
    1﹑在C#中引用System.IO,在類中定義倆個Static DataSet ds﹐Static DataView dv。然后寫一個顯示XML数据的函数:
    private void DG_Bind()
    {
    FileStream fs=new FileStream(Server.MapPath(".\\")+"xml\\books.xml",FileMode.Open,FileAccess.Read);
    StreamReader reader=new StreamReader(fs);
    ds=new DataSet();
    ds.ReadXml(reader);
    fs.Close();
    dv=new DataView();
    dv=ds.Tables[0].DefaultView;
    DG.DataSource=dv;
    DG.DataBind();
    }
    在Page_Load中引用函数:
    if(!IsPostBack)
    {
    DG_Bind();
    }

    2﹑向XML中添加数据﹕
    private void Add_Click(object sender, System.EventArgs e)
    {
    FileStream fs=new FileStream(Server.MapPath(".\\")+"xml\\books.xml",FileMode.Open,FileAccess.Read);
    StreamReader reader=new StreamReader(fs);
    ds=new DataSet();
    ds.ReadXml(reader);
    fs.Close();
    DataRow dr=ds.Tables[0].NewRow();
    dr["BookName"]=Book.Text.Trim();
    dr["BookId"]=Bid.Text.Trim();
    dr["BookPrice"]=Price.Text.Trim();
    dr["Supplier"]=Supp.Text.Trim();
    ds.Tables[0].Rows.Add(dr);
    ds.AcceptChanges();

    fs=new FileStream(Server.MapPath(".\\")+"xml\\books.xml",FileMode.Create,FileAccess.Write|FileAccess.Read);
    StreamWriter writer=new StreamWriter(fs);
    ds.WriteXml(writer);
    writer.Close();
    fs.Close();
    DG_Bind();
    }

    3﹑查詢數據﹐查詢數據很簡單﹐就向DV查詢就OK了﹐主要是利用DV的RowFilter方法。代碼經如下:
    private void Search(object sender, System.EventArgs e)
    {
    dv.Sort="BookName";
    dv.RowFilter="BookName like '%"+BookName.Text.Trim()+"%'";
    DG1.DataSource=dv;
    DG1.DataBind();
    }

    4﹑數據的刪除并寫入XML文件中,在這里﹐我們就要用到DG中添加的CheckBox控件的TemplateColumn作用了﹐首先利用一個循環來判斷CheckBox是否被選種﹐然后刪除選中的列﹐并寫入XML文件中。具體 的代碼如下﹕
    private void Del_Click(object sender, System.EventArgs e)
    {
    for(int i=0;i<this.DG.Items.Count;i++)
    {
    CheckBox CK=(CheckBox)this.DG.Items[i].FindControl("ck");
    if(CK.Checked)
    {
    ds.Tables[0].DefaultView.Sort="BookId";
    int j=ds.Tables[0].DefaultView.Find(this.DG.Items[i].Cells[1].Text);
    ds.Tables[0].DefaultView.Delete(j);
    DG.DataSource=ds.Tables[0].DefaultView;
    ds.AcceptChanges();
    FileStream fs=new FileStream(Server.MapPath(".\\")+"xml\\books.xml",FileMode.Create,FileAccess.Write|FileAccess.Read);
    StreamWriter writer=new StreamWriter(fs);
    ds.WriteXml(writer);
    writer.Close();
    fs.Close();
    }
    }
    DG_Bind();
    }
  • 相关阅读:
    Wazuh配置电子邮件警报(SMTP)
    kafka 分区重新分配脚本
    shell并发及控制并发数
    python2和python3使用pyhive
    k8s1.17安装gitlab
    nginx ssl证书 BEGIN PRIVATE KEY 转换为BEGIN RSA PRIVATE KEY
    Datax:阿里云hbase数据导入到自建hbase集群
    python3连接impala(centos7)
    Effective Java2读书笔记-类和接口(五)
    Effective Java2读书笔记-类和接口(四)
  • 原文地址:https://www.cnblogs.com/meiproject/p/754597.html
Copyright © 2011-2022 走看看