首 页 | 精品电影 | 音乐天堂 | 在线游戏 | Flash MTV | 三湘书屋 | 幽默笑话 | 三湘图库 | 美女写真 | IT知识库 | QQ贴图 | 加入书签

网页制作网络编程图形图象操作系统冲浪宝典软件教学网络安全认证考试通信技术电子商务业内动态书籍教程原码

最近更新 文章分类 多媒体类 精品软件

本站搜索:
您的位置:三湘时空 -> IT知识库 -> 文章分类 -> XML技巧 -> 从XML中读取数据到内存的实例
从XML中读取数据到内存的实例


文章类别:XML技巧 来源: 作者: 发表日期:2006-4-20 字体:[ ]

小游戏 | 在线影院 | 幽默笑话 | 源码下载 | Flash MTV | 音乐试听 | 书屋 | 美女写真

public clsSimuResultByOneGoods GetOneGoodsSimulationXML(string PathAndFileName)
        {
            clsSimuResultByOneGoods OneGoods = new clsSimuResultByOneGoods();//自己定义的一个类
            Hashtable AllLocationResult = new Hashtable();
            System.Xml.XmlTextReader r = new XmlTextReader(PathAndFileName);
            string LocationID = "";
            DataTable LocationTable = null;
            while(r.Read())
            {
                if(r.NodeType == XmlNodeType.Element)
                {
                    switch(r.LocalName)
                    {
                        case "Result":
                            OneGoods.GoodsCode = r.GetAttribute("GoodsCode");
                            OneGoods.From = Convert.ToDateTime(r.GetAttribute("FromDate"));
                            OneGoods.To = Convert.ToDateTime(r.GetAttribute("ToDate"));
                            break;
                        case "Location":
                            LocationID = r.GetAttribute("ID");
                            LocationTable = new DataTable();
                            LocationTable.Columns.Add("Date",typeof(DateTime));
                            LocationTable.Columns.Add("SafetyStock",typeof(decimal));
                            LocationTable.Columns.Add("ForecastDemand",typeof(decimal));
                            LocationTable.Columns.Add("FinalOutput",typeof(decimal));
                            LocationTable.Columns.Add("FinalInput",typeof(decimal));
                            LocationTable.Columns.Add("SimuStock",typeof(decimal));
                            LocationTable.Columns.Add("SimuStockTime",typeof(decimal));
                            LocationTable.Columns.Add("ImportWorkDay",typeof(bool));
                            LocationTable.Columns.Add("ImportWorkDay",typeof(bool));
                            break;
                        case "Record":
                            if(LocationTable != null)
                            {
                                DataRow dr = LocationTable.NewRow();
                                dr["Date"] = Convert.ToDateTime(r.GetAttribute("Date"));
                                if(r.GetAttribute("SafetyStock") != null && r.GetAttribute("SafetyStock") != "")
                                    dr["SafetyStock"] = Convert.ToDecimal(r.GetAttribute("SafetyStock"));
                                if(r.GetAttribute("ForecastDemand") != null && r.GetAttribute("ForecastDemand") != "")
                                    dr["ForecastDemand"] = Convert.ToDecimal(r.GetAttribute("ForecastDemand"));
                                if(r.GetAttribute("FinalInput") != null && r.GetAttribute("FinalInput") != "")
                                    dr["FinalInput"] = Convert.ToDecimal(r.GetAttribute("FinalInput"));
                                if(r.GetAttribute("FinalOutput") != null && r.GetAttribute("FinalOutput") != "")
                                    dr["FinalOutput"] = Convert.ToDecimal(r.GetAttribute("FinalOutput"));
                                if(r.GetAttribute("SimuStock") != null && r.GetAttribute("SimuStock") != "")
                                    dr["SimuStock"] = Convert.ToDecimal(r.GetAttribute("SimuStock"));
                                if(r.GetAttribute("SimuStockTime") != null && r.GetAttribute("SimuStockTime") != "")
                                    dr["SimuStockTime"] = Convert.ToDecimal(r.GetAttribute("SimuStockTime"));
                                if(r.GetAttribute("ImportWorkDay") != null && r.GetAttribute("ImportWorkDay") != "")
                                    dr["ImportWorkDay"] = Convert.ToBoolean(r.GetAttribute("ImportWorkDay"));
                                if(r.GetAttribute("ExportWorkDay") != null && r.GetAttribute("ExportWorkDay") != "")
                                    dr["ExportWorkDay"] = Convert.ToBoolean(r.GetAttribute("ExportWorkDay"));
                                LocationTable.Rows.Add(dr);

                            }
                            break;
                        default:
                            break;
                    }
                }
                else if(r.NodeType == XmlNodeType.EndElement)
                {
                    switch(r.LocalName)
                    {
                        case "Location":
                            if(LocationTable != null)
                            {
                                LocationTable.AcceptChanges();
                                AllLocationResult.Add(LocationID,LocationTable);
                                LocationID = "";
                                LocationTable = null;
                            }
                            break;
                        default:
                            break;
                    }
                }
            }
            OneGoods.AllLocationResult = AllLocationResult;
            return OneGoods;
           
        }

上一篇:使用 ASP.NET Atlas PageNavigator控件实现客户端分页导航 下一篇:没有Sleep键也可实现Windows一键休眠
本栏目热门文章
·Javascript 调用XML制作连动下拉框 2005-10-4
·多级联动下拉选择框,动态获取下一级 2005-10-4
·利用XMLBean轻轻松松读写XML 2005-12-16
·将图片读入到Dom中,并将其存为xml文件 2005-10-4
·将一个图片以二进制值的形式存入Xml文件中 2005-10-4
·WML初级教程之从实际应用中了解WML 2005-10-4
·手把手教你制作Google Sitemap(详细制作教程和协议讲解) 2005-6-5
·XML的简单读取与写入 2005-10-4
·利用XML实现通用WEB报表打印实际使用中的例子 2006-3-24
·XML数据库中几个容易混淆的概念 2005-10-4
新近更新文章
·Xml_javascript分页 2006-5-12
·从XML中读取数据到内存的实例 2006-4-20
·一个简单的基于XML的模块集成框架 2006-4-13
·读取XML为行记录 2006-3-28
·利用XML实现通用WEB报表打印实际使用中的例子 2006-3-24
·新兴XML处理方法VTD-XML介绍 2006-3-18
·使用带批注的 XDR 架构创建 XML 视图 2006-1-6
·使用 XML 模板 (MSSQL手册) 2006-1-6
·在XPath查询中指定轴(转自MSSQL手册) 2006-1-6
·实例简析XPath串函数和XSLT 2006-1-6
首 页 | 软件发布 | 广告联系 | 下载帮助 | 意见反馈 | 网站地图
  CopyRight? 2002-2004 WWW.SXSKY.NET? All Rights Reserved
三湘时空 站长QQ:82675303 Email: