将textBox内容保存到Xml文件中 5
在VS2010中,用C#怎么把textBox中的内容保存到Xml文件中,求大神编写一个小的实例。就像下图把这7个textBox1-7内的内容单击另存为按钮把存到一个Xml...
在VS2010中,用C#怎么把textBox中的内容保存到Xml文件中,求大神编写一个小的实例。
就像下图把这7个textBox1-7内的内容单击另存为按钮把存到一个Xml文件中,有重谢! 展开
就像下图把这7个textBox1-7内的内容单击另存为按钮把存到一个Xml文件中,有重谢! 展开
1个回答
展开全部
给你个例子吧,把下面的张三和李四改成你的textbox的值即可!
private void button1_Click_3(object sender, EventArgs e)
{
bool bl_exist;
string str_path = "d:\\test.xml";
XmlDocument xml = new XmlDocument();
XmlNode root;
XmlElement xe, Name, Age;
if (File.Exists(str_path))
{
xml.Load(str_path);
root = xml.SelectSingleNode("root"); //存在就查找根节点
}
else
{
XmlDeclaration declare = xml.CreateXmlDeclaration("1.0", "UTF-8", null);
xml.AppendChild(declare);
root = xml.CreateElement("root"); //不存在就创建根节点
xml.AppendChild(root);
}
XmlNodeList nodelist = xml.SelectNodes("/root/Student"); //必须是正斜杠“/” ,大小写有区别
bl_exist = false;
foreach (XmlNode node in nodelist)
{
if (node.ChildNodes[0].InnerText == "张三")
{
bl_exist = true;
break;
}
}
if (!bl_exist)
{
xe = xml.CreateElement("Student"); //创建元素
Name = xml.CreateElement("Name");
Name.InnerText = "张三";
xe.AppendChild(Name);
Age = xml.CreateElement("Age");
Age.InnerText = "19";
xe.AppendChild(Age);
root.AppendChild(xe);
}
XmlNode node2 = xml.SelectSingleNode("//Student[Name='李四']");
if (node2 == null)
{
xe = xml.CreateElement("Student"); //创建元素
Name = xml.CreateElement("Name");
Name.InnerText = "李四";
xe.AppendChild(Name);
Age = xml.CreateElement("Age");
Age.InnerText = "18";
xe.AppendChild(Age);
root.AppendChild(xe);
}
xml.Save(str_path);
}
private void button1_Click_3(object sender, EventArgs e)
{
bool bl_exist;
string str_path = "d:\\test.xml";
XmlDocument xml = new XmlDocument();
XmlNode root;
XmlElement xe, Name, Age;
if (File.Exists(str_path))
{
xml.Load(str_path);
root = xml.SelectSingleNode("root"); //存在就查找根节点
}
else
{
XmlDeclaration declare = xml.CreateXmlDeclaration("1.0", "UTF-8", null);
xml.AppendChild(declare);
root = xml.CreateElement("root"); //不存在就创建根节点
xml.AppendChild(root);
}
XmlNodeList nodelist = xml.SelectNodes("/root/Student"); //必须是正斜杠“/” ,大小写有区别
bl_exist = false;
foreach (XmlNode node in nodelist)
{
if (node.ChildNodes[0].InnerText == "张三")
{
bl_exist = true;
break;
}
}
if (!bl_exist)
{
xe = xml.CreateElement("Student"); //创建元素
Name = xml.CreateElement("Name");
Name.InnerText = "张三";
xe.AppendChild(Name);
Age = xml.CreateElement("Age");
Age.InnerText = "19";
xe.AppendChild(Age);
root.AppendChild(xe);
}
XmlNode node2 = xml.SelectSingleNode("//Student[Name='李四']");
if (node2 == null)
{
xe = xml.CreateElement("Student"); //创建元素
Name = xml.CreateElement("Name");
Name.InnerText = "李四";
xe.AppendChild(Name);
Age = xml.CreateElement("Age");
Age.InnerText = "18";
xe.AppendChild(Age);
root.AppendChild(xe);
}
xml.Save(str_path);
}
更多追问追答
追问
用到的命名空间说一下呗,我运行的时候提示我File里面并不包含Exists的定义。
追答
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO; //读写文本文档
using System.Data.SqlClient; //连接SQL数据库
using System.Xml; //使用XML类
using System.Xml.XPath;//使用XPath
using System.Xml.Xsl;
using System.Collections;
using System.Reflection;
using System.Security;
using System.Security.AccessControl;
using Microsoft.Win32;
using System.Diagnostics; //Process
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询