使用XML登录时出错

本文关键字:出错 登录 XML 使用 | 更新日期: 2023-09-27 18:07:30

我几乎完成了一个大项目,这是我最后一个错误。我创建了一个XML文件,可以添加一些数据,代码如下:

        string path = "XMLFile1.xml";
        XmlDocument doc = new XmlDocument();
        if (!System.IO.File.Exists(path))
        {
            MessageBox.Show("lmge;lm");
            XmlDeclaration declaration = doc.CreateXmlDeclaration("1.0", "UTF-8", "yes");
            XmlComment comment = doc.CreateComment("This is an XML Generated File");
            doc.AppendChild(declaration);
            doc.AppendChild(comment);
        }
        else
        {
            doc.Load(path); MessageBox.Show("Everyting is right?");
        }
        XmlElement root = doc.DocumentElement;
        XmlElement Subroot = doc.CreateElement("Angajat");
        XmlElement name = doc.CreateElement("Name");
        XmlElement id = doc.CreateElement("ID");
        XmlElement password = doc.CreateElement("Password");
        XmlElement phone = doc.CreateElement("phone_nr");
        XmlElement address = doc.CreateElement("Address");
        nume.InnerText = textBox1.Text;
        id.InnerText = textBox2.Text;
        password.InnerText = textBox3.Text;
        phone.InnerText = textBox4.Text;
        address.InnerText = textBox5.Text;
        Subroot.AppendChild(name);
        Subroot.AppendChild(id);
        Subroot.AppendChild(password);
        Subroot.AppendChild(phone);
        Subroot.AppendChild(address);
        root.AppendChild(Subroot);
        doc.AppendChild(root);
        doc.Save(path);
        MessageBox.Show("Succes!");

现在我在登录时得到错误信息

        XmlDocument doc = new XmlDocument();
        string filename = @"D:'Poriecte Visual'INFO2017'INFO2017'XMLFile1.xml";
        doc.Load(filename);
        foreach (XmlNode node in doc.SelectNodes("persoane"))
        {
            String Username = node.SelectSingleNode("ID").InnerText;
            String Password = node.SelectSingleNode("Password").InnerText;
            if (Username == textBox3.Text && Password == textBox4.Text)
            {
                Form a = new Form4();
                a.Show();
                this.Hide();
            }
            else
            {
                MessageBox.Show("Something is wrong");
            }

我得到这个错误:输入图像描述这里

我的XML文件看起来像:

<?xml version="1.0" encoding="utf-8"?>
<Persoane>
 <Angajat>
  <Name>Horatiu Necula</Name>
  <ID>horatiu</ID>
  <Password>123</Password>
  <Phone_nr>0723626741</Phone_nr>
  <Address>Valenii de munte ,PH</Address>
 </Angajat>
</Persoane>

帮帮我,这几天我找了很多,但都没用:'

编辑:有人帮助我,它工作了,路径是不正确的,但现在我得到这个错误"对象引用不设置为对象的实例"在第70行(字符串Username = node.SelectSingleNode("ID").InnerText;)

使用XML登录时出错

您确定xml文件的路径是正确的吗?如果路径上的文档实际上为空,则可能发生此错误。除此之外,我建议用此处描述的FileStream加载XML文件,因为如果您的文件不可用或不可访问,它会为您提供更详细的错误集。