WPF对于xml的简单操作(下下)插入节点并排序

正如T所说,下下,这个方法不堪入目, ̄□ ̄||

贴上再说

        //先搞个struct声明

        private struct datastruct

        {

            public string x;

            public string y;

            public string z;

        }
private void sort()
{
   int
i = intIndex + 2;//索引定位 XmlNodeList xnl = xmlRoot.ChildNodes; datastruct dt0 = new datastruct(); datastruct dt1 = new datastruct(); foreach (XmlNode xn in xnl) { XmlElement xe =
(XmlElement)xn;
      //替换,原数据存入struct
if (xe.GetAttribute("id") == TextBox1.Text) { XmlNodeList xnf1 = xe.ChildNodes; dt0.x = xnf1[0].InnerText; dt0.y = xnf1[1].InnerText; dt0.z = xnf1[2].InnerText; xnf1[0].InnerText = TextBox2.Text; xnf1[1].InnerText = TextBox3.Text; xnf1[2].InnerText = TextBox4.Text; }
    }
    //增加尾节点

    XmlElement xe1
= xmlDoc.CreateElement("Item"); xe1.SetAttribute("id", (listview.Items.Count+1).ToString()); XmlElement xesub1 = xmlDoc.CreateElement("X"); xesub1.InnerText = dt1.x; xe1.AppendChild(xesub1); XmlElement xesub2 = xmlDoc.CreateElement("Y"); xesub2.InnerText = dt1.y; xe1.AppendChild(xesub2); XmlElement xesub3 = xmlDoc.CreateElement("Z"); xesub3.InnerText = dt1.z; xe1.AppendChild(xesub3); xmlRoot.AppendChild(xe1);
}

水水更健康,xls神马的,自己搞个水水的照样过日子

思路:而当数据大的时候这个,肯定很耗资源,根据文本结构,最理想的方法应该是在所要插入新数据的地方回车,生成新的所需的行数空间,在一一进行写入操作。

你可能感兴趣的:(xml)