在 C#.net 中将文本框值写入 xml 文件
我有两个文本框,即 txtUserid 和 txtPassowrd 。
我正在将文本框中输入的值写入 XML
文件,但我不希望相同的 txtuserid
值在 XML
中写入两次 -它应该被覆盖。
例如:
- 如果我输入
txtUserid=2
和txtPassword=I
- ,第二次输入
txtUserid=2
code> 和 txtPassword=m
那么我只想在 XML
文件中保留一个条目:
对于上面的示例: txtUserid=2
和textPassword=m
代码:
XDocument Xdoc = new XDocument(new XElement("Users"));
if (System.IO.File.Exists("D:\\Users.xml"))
{
Xdoc = XDocument.Load("D:\\Users.xml");
}
else
{
Xdoc = new XDocument();
}
XElement xml = new XElement("Users",
new XElement("User",
new XAttribute("UserId", txtUserName.Text),
new XAttribute("Password", txtPassword.Text)));
if (Xdoc.Descendants().Count() > 0)
{
Xdoc.Descendants().First().Add(xml);
}
else
{
Xdoc.Add(xml);
}
Xdoc.Save("D:\\Users.xml");
I have two TextBoxes namely txtUserid
and txtPassowrd
.
I'm writing the values entered in textboxes to a XML
file but I do not want the same txtuserid
values to be written twice in XML
- it should be overwritten.
For example :
- If I enter in
txtUserid=2
andtxtPassword=I
- and the second time if I enter
txtUserid=2
andtxtPassword=m
then I only want one entry to be kept in the XML
file :
For the above example: the txtUserid=2
and textPassword=m
The code:
XDocument Xdoc = new XDocument(new XElement("Users"));
if (System.IO.File.Exists("D:\\Users.xml"))
{
Xdoc = XDocument.Load("D:\\Users.xml");
}
else
{
Xdoc = new XDocument();
}
XElement xml = new XElement("Users",
new XElement("User",
new XAttribute("UserId", txtUserName.Text),
new XAttribute("Password", txtPassword.Text)));
if (Xdoc.Descendants().Count() > 0)
{
Xdoc.Descendants().First().Add(xml);
}
else
{
Xdoc.Add(xml);
}
Xdoc.Save("D:\\Users.xml");
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在现有 XML 文档中搜索 UserId 属性与当前节点匹配的节点,如果匹配,则修改该节点,否则创建一个新节点。
我想您的代码将类似于以下内容:
编辑:为了响应您的评论,编辑 XElement 的代码将类似于
Search your existing XML document for a node where the UserId attribute matches your current one, and if it does, modify that one, else make a new one.
I'd imagine that your coude would resemble the following:
Edit: In response to your comment, the code to edit your XElement would look something like
在 C# 中将文本框值写入 XML 文件
Writing textbox values to XML file in C#