zoukankan      html  css  js  c++  java
  • C#读取xml

    1.

    Asp.net使用login控件(系统提供的登录控件,而不是用户自己定义的控件)的时候为控件上的按钮添加事件是Login_Authenticate()。

    2.

    关于XML的读取和遍历

    XmlDocument doc = new XmlDocument();//使用XmlDocument类操作XML文档。

                doc.Load("D:/login.xml");//加载文档

                XmlNode nodeRoot = doc.DocumentElement;//获取根节点

                Console.WriteLine(nodeRoot.Name);//输出节点名

    Console.Write("Please Enter Your Name:");//以下是模拟用户登录,用XML内的数据进行比较

                string unameGet = Console.ReadLine();

                Console.Write("Please Enter Your Password:");

                string pwdGet = Console.ReadLine();

                XmlNode nodeUser = nodeRoot.FirstChild;//获取第一个子节点

                while (nodeUser != null)

                {

                    string uname = nodeUser.SelectSingleNode("uname").InnerText;//注意:asp.net用InnerText表示节点的值,而不是用Value;

                    string pwd = nodeUser.SelectSingleNode("pwd").InnerText;//SelectSingNode()方法获取当前节点的一个子节点。

                    if (uname.Equals(unameGet) && pwd.Equals(pwdGet))

                    {

                        Console.WriteLine(unameGet + ",You Have Logged In Successfully");

                        break;

                    }

                    else

                    {

                        nodeUser = nodeUser.NextSibling;//获取下一个兄弟节点

                    }

                } 

                if(nodeUser == null)

                    Console.WriteLine(unameGet + ",You Failed to Log In ");

    以下是login.xml:

    <?xml version="1.0" encoding="utf-8" ?>

    <root>

        <user>

            <uid>1</uid>

            <uname>jack</uname>

            <pwd>jack</pwd>

        </user>

        <user>

            <uid>2</uid>

            <uname>peter</uname>

            <pwd>peter</pwd>

        </user>

        <user>

            <uid>3</uid>

            <uname>luke</uname>

            <pwd>luke</pwd>

        </user>

        <user>

            <uid>4</uid>

            <uname>ok</uname>

            <pwd>ok</pwd>

        </user>

        <user>

            <uid>5</uid>

            <uname>lame</uname>

            <pwd>lame</pwd>

        </user>

    </root>

    用Foreach语句实现上述功能的简便方法:

         foreach (XmlNode item in doc.GetElementsByTagName("uname"))//按标签名获取节点的集合

                {   XmlNode nodePwd=uname.NextSibling;

                    if (item.InnerText == unameGet&&nodePwd.InnerText==pwdGet)

                    {

                        Console.WriteLine(unameGet + ",You Have Logged In Successfully");

                        break;//跳出循环

                    }

                }

    以上代码同时证明,foreach除了可以遍历每一个元素,也可以使用break跳出循环。

  • 相关阅读:
    WPF 分页控件Pager
    vue Map 渲染DOM
    IDEA 开发工具 Mybatis 快速开发插件 ==》MyBatisX
    令自己的本地ip可以被外网访问
    mybatis按datetime条件查询,参数为时间戳时
    springmvc传参---LocalDateTime、Date等时间类型转换
    java excel导出(表头合并,多行表头)
    JMeter学习工具简单介绍
    idea项目 run、debug变灰色的问题
    vue的ui库使用Element UI,纯html页面,不使用webpack那玩意
  • 原文地址:https://www.cnblogs.com/aaronhoo/p/2518073.html
Copyright © 2011-2022 走看看