当前位置:编程学习 > C#/ASP.NET >>

将xml文件里的数据放如自定义类里存入HashTable里面

我有一个xml文件,里面的数据想放入自定义类里存入HashTable里面,不知道有没有哪为高手有这方面的例子,希望能解小弟一时之困!谢谢! --------------------编程问答-------------------- 自己给自己顶一下 --------------------编程问答-------------------- 你可以参考下面资料(不过是VB的)
http://www.yesky.com/20010208/157915.shtml --------------------编程问答-------------------- 学习中,帮楼主顶. --------------------编程问答-------------------- 谢谢二楼的老兄,还有c#版的吗? --------------------编程问答-------------------- 数据写入xml时,用DataSet.WriteXml方法
读取时用DataSet.ReadXml方法
你可以参考下面资料
http://blog.csdn.net/lizanhong/archive/2004/06/23/24374.aspx --------------------编程问答-------------------- 我想实现的是:从xml文件里读取数据,放到自定义类里,然后自定义类的数据作为hashtable的值存进hashtable里面. --------------------编程问答-------------------- 自己顶啊 --------------------编程问答-------------------- dom,我就不说了...
用DataSet.ReadXml 读文件然后保存到hashtable表中不行? --------------------编程问答-------------------- 楼上的老兄说的这种方法可以啊,可是领导要求必须要用我说的这种方法实现.没办法啊! --------------------编程问答-------------------- 这就看你XML的结构了
你可以序列化成你的类也可以
或者用DOM的操作方式转化成类 --------------------编程问答-------------------- 我的xml结构为

<?xml version="1.0" encoding='iso-8859-1'?>
<xml>
   <subsys subid='1001'>
      <subname>资源子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q0</hbstatus>
      <hbtime>2007-06-15 13:46:23</hbtime>
      <alarmstatus>N</alarmstatus>
      <memo>正常</memo>
   </subsys>
   <subsys subid='1002'>
      <subname>性能子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q1</hbstatus>
      <hbtime>2007-06-15 13:44:23</hbtime>
      <alarmstatus>N</alarmstatus>
      <memo>心跳一次超时</memo>
   </subsys>
   <subsys subid='1003'>
      <subname>告警子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q0</hbstatus>
      <hbtime>2007-06-15 13:44:23</hbtime>
      <alarmstatus>A</alarmstatus>
      <memo>子系统当前进程数5,应有进程数7</memo>
   </subsys>
   <subsys subid='1004'>
      <subname>操作子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q0</hbstatus>
      <hbtime>2007-06-15 13:44:23</hbtime>
      <alarmstatus>A</alarmstatus>
      <memo></memo>
   </subsys>
   <subsys subid='1005'>
      <subname>局数据子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q0</hbstatus>
      <hbtime>2007-06-15 13:44:23</hbtime>
      <alarmstatus>A</alarmstatus>
      <memo></memo>
   </subsys>
   <subsys subid='1006'>
      <subname>智能维护子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q0</hbstatus>
      <hbtime>2007-06-15 13:44:23</hbtime>
      <alarmstatus>A</alarmstatus>
      <memo></memo>
   </subsys>
   <subsys subid='1007'>
      <subname>安全子系统</subname>
      <hbperiod>60</hbperiod>
      <hbstatus>Q0</hbstatus>
      <hbtime>2007-06-15 13:44:23</hbtime>
      <alarmstatus>A</alarmstatus>
      <memo></memo>
   </subsys>
</xml>
--------------------编程问答-------------------- string file = "e:\\1.xml";
            XmlDocument doc = new XmlDocument();
            doc.Load(file);
            XmlNodeList list = doc.SelectNodes("/xml/subsys");
            foreach (XmlNode node in list)
            {
                Console.WriteLine(node.Attributes["subid"].Value);
                Console.WriteLine(node.SelectSingleNode("subname").InnerText);
                Console.WriteLine(node.SelectSingleNode("hbperiod").InnerText);
                Console.WriteLine(node.SelectSingleNode("hbstatus").InnerText);
                Console.WriteLine(node.SelectSingleNode("hbtime").InnerText);
                Console.WriteLine(node.SelectSingleNode("alarmstatus").InnerText);
                Console.WriteLine(node.SelectSingleNode("memo").InnerText);
            }

或者你可以看看序列化方面的内容 --------------------编程问答-------------------- 能给个这种类的例子吗?对用类作为hashtable的值存取比较陌生,谢谢了! --------------------编程问答-------------------- 我自己写了个类,不知道对不对,大家给看一下.

public class status
    {
        public int subid;
        public string subname;
        public int hbperiod;
        public string hbstatus;
        public DateTime hbtime;
        public string alarmstatus;
        public string memo;

        public void setData(int cloumn1, string cloumn2, int cloumn3, string cloumn4, DateTime cloumn5, string cloumn6, string cloumn7)
        {
            subid = cloumn1;
            subname = cloumn2;
            hbperiod = cloumn3;
            hbstatus = cloumn4;
            hbtime = cloumn5;
            alarmstatus = cloumn6;
            memo = cloumn7;

        }
        public int readIntData(int intData)
        {
            return intData;
        }
        public string readStrData(string strData)
        {
            return strData;
        }
        
    } --------------------编程问答-------------------- 放在Hashtable??

Hashtable ht = new Hashtable();
ht.Add("key",你的类)

读取的时候
(你的类)ht["key"]就可以了 --------------------编程问答-------------------- 我需要的是这个类啊,这个类我写的有问题好象,我做成dll之后,调用的时候实例化对象之后找不到里面的方法.不知道为何?大哥有没有这方面的类的例子啊,我其他方法可以实现,关键是领导要求必须用类存. --------------------编程问答-------------------- 是将status放入hashtable中?? --------------------编程问答-------------------- 是啊 --------------------编程问答-------------------- 楼上这位大哥有这种类的例子吗,我写的类编译成dll之后调用时找不到类里面的方法啊! --------------------编程问答-------------------- 自己顶顶啊
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,