settings.xml文件内容如下:
<?xml version="1.0" encoding="gb2312"?>
<Settings>
<ConnectionString>测试</ConnectionString>
<BadCustomers>
<BadCustomer name="张三" />
<BadCustomer name="李四" />
<BadCustomer name="王五" />
                  <BadCustomer name="赵六" />
</BadCustomers>
</Settings>我想在<BadCustomers>中加一条记录<BadCustomer name="张七" /> ,请问如何做?
我的代码是错误的,代码如下:string xpath=System.IO.Path.Combine(Application.StartupPath, "settings.xml");;
DataSet ds=new DataSet();
FileStream fs=new FileStream(xpath,FileMode.Open);
ds.ReadXml(fs);
if(ds.Tables.Count==0)
{
fs.Close();
}DataRow dr=ds.Tables[2].NewRow();//新建一行
dr["name"] = "张七";
ds.Tables[0].Rows.InsertAt(dr,0);//插入到第0行位置
MessageBox.Show("添加完成", "添加完成", MessageBoxButtons.OK, MessageBoxIcon.Information);

解决方案 »

  1.   

    可以用DOM也可以用XMLTextWriter,示例如下:C#对XML操作:写入一笔XML记录
    http://www.ddvip.net/program/c-/index6/67.htm
    http://www.manbu.net/Lib/Class2/Sub10/1/22.asp
      

  2.   

    DataRow dr=ds.Tables[2].NewRow();//新建一行
    dr["name"] = "张七";
    ds.Tables[0].Rows.InsertAt(dr,0);//插入到第0行位置改成
    DataRow dr=ds.Tables[2].NewRow();//新建一行
    dr["name"] = "张七";
    ds.Tables[2].Rows.InsertAt(dr,0);//插入到第0行位置
    试试
      

  3.   

    DataRow dr=ds.Tables[2].NewRow();//新建一行
    dr["name"] = "张七";
    ds.Tables[2].Rows.Add(dr);
      

  4.   

    XmlDocument的使用:http://www.ylnj.net/bbs/bbs.aspx?TopicID=44&TypeID=4&WebTitle=XML技术
    XMLWrite类:http://www.ylnj.net/bbs/bbs.aspx?TopicID=43&TypeID=4&WebTitle=XML技术
    XMLReader类:http://www.ylnj.net/bbs/bbs.aspx?TopicID=42&TypeID=4&WebTitle=XML技术
      

  5.   

    我有一点不明白,我想请问一下,ds.Table[2]是指哪张表,那ds.Table[0]又是哪张表啊,
    能不能用具体的名字代替的啊,小弟初学,还表指点
      

  6.   

    Table[0]指的是第一张表吧 ,
    Table[1]指的是第二张表,
    以后依次类推
      

  7.   

    XmlDocument doc = new XmlDocument();
    doc.Load(@"e:\yourfile");XmlElement _ele = doc.CreateElement("BadCustomer");
    _ele.SetAttribute("name","张七");doc.Save(@"e:\yourfile");