自定义XML配置文件的操作类

原创 2004年08月23日 10:15:00

xml配置文件:

<?xml version="1.0"?>
<ModuleSettings xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <DataSource>fujian</DataSource>
  <Uid>fujian_zyz</Uid>
  <Password>fujian_sql_zyz</Password>
  <ShowLogin>false</ShowLogin>
</ModuleSettings>

操作类的实现:

using System;
using System.IO;
using System.Web;
using System.Text;
using System.Xml.Serialization;
using System.Xml;

namespace LTPTOOL
{
 #region 配置对象模型类

 /// <summary>
 /// 李天平
 /// 2004.3
 /// 配置的modul类(注意相关属性的类型与[XmlElement])
 /// use:ModuleSettings settings=ModuleConfig.GetSettings();
 /// </summary>
 public class ModuleSettings
 {
  private string datasource;
  private string uid;
  private string password;
  private bool showlogin;
  
   
  [XmlElement]
  public string DataSource
  {
   set{ datasource=value; }
   get{ return datasource; }
  }
  [XmlElement]
  public string Uid
  {
   set{ uid=value; }
   get{ return uid; }
  }
  [XmlElement]
  public string Password
  {
   set{ password=value; }
   get{ return password; }
  }
  [XmlElement]
  public bool ShowLogin
  {
   set{ showlogin=value; }
   get{ return showlogin; }
  }
 

 }
 #endregion


 #region  配置的操作类ModuleConfig
 /// <summary>
 /// 配置的操作类ModuleConfig。
 /// </summary>
 public class ModuleConfig
 {

  public static ModuleSettings GetSettings()
  {   
   ModuleSettings data = null;
   XmlSerializer serializer = new XmlSerializer(typeof(ModuleSettings));
   try
   {
    string fileName = "db.config";    
    FileStream fs = new FileStream(fileName, FileMode.Open);     
    data = (ModuleSettings)serializer.Deserialize(fs);
    fs.Close();    
   }
   catch
   { 
    data = new ModuleSettings();
   }
  
   
   return data;
  }


  public static void SaveSettings(ModuleSettings data)
  {
   string fileName = "db.config";
   XmlSerializer serializer = new XmlSerializer (typeof(ModuleSettings));
       
   // serialize the object
   FileStream fs = new FileStream(fileName, FileMode.Create);
   serializer.Serialize(fs, data);
   fs.Close();
  }

  
  #endregion


 }

}

得到配置文件的详细信息;

ModuleSettings settings=ModuleConfig.GetSettings();
txtServer.Text=settings.DataSource;
txtUser.Text=settings.Uid;
txtPass.Text=settings.Password;

保存修改:

settings.DataSource=txtServer.Text;
ModuleConfig.SaveSettings(settings);

对于扩展配置也非常方便,只需修改ModuleSettings的对象模型和ModuleConfig.中的文件名就可以用到任何其他配置文件的操作中。

自定义schema文件。xml引入该规则。

第1步:创建02.xsd文件,定义相应的规则:首先相关定义: Order 指示器包含一下三种: All :规定它里面元素出现的顺序可以是任意的,但是相同的元素只能1次; ...
  • qq_31451471
  • qq_31451471
  • 2016年12月27日 01:34
  • 615

web工程读取自定义xml配置文件的方法

以前都是在c++中我都是习惯用ini配置文件,接触webx框架后,一般都是用得配置好的xml文件,偷懒结果就是把自己给坑了。在需要自定义配置文件的之后踩到了坑,特此记录下。         此处我想...
  • u012480148
  • u012480148
  • 2016年07月29日 10:18
  • 1582

自定义属性之xml文件中自定义的属性

在代码中,我们有时会看到代码的布局中或有我们没见过的属性例如
  • DiuDiu666hf
  • DiuDiu666hf
  • 2017年03月07日 12:45
  • 765

Spring下自定义xml标签

spring框架下自定义一个标签,为以后定义一组标签,来控制流程处理做准备。自定义一个标签需要以下步骤: 确定标签的属性,编写对应的java bean 根据java bean编写对应xsd文件 编写...
  • wzl19870309
  • wzl19870309
  • 2017年03月16日 15:27
  • 1680

C# WinForm开发中使用XML配置程序

本文介绍在使用C#开发WinForm程序时,如何使用自定义的XML配置文件。虽然也可以使用app.config,但命名方面很别扭。 我们在使用C#开发软件程序时,经常需要使用配置文件。虽然说Visu...
  • basycia
  • basycia
  • 2016年01月14日 15:59
  • 1163

Unity3D 使用XML进行简单的配置文件修改

1、首先是看看效果图: 开始运行项目如下图所示 2、点击绿色按钮修改配置文件再点击修改按钮成功修改方块颜色 3、接了下是实现的过程: 首先在Hierarchy创建一个cube,其次...
  • wcluojiji
  • wcluojiji
  • 2014年10月30日 21:11
  • 2820

5.玩转Spring Boot 自定义配置、导入XML配置与外部化配置

在这里我会全面介绍在Spring Boot里面如何自定义配置,更改Spring Boot默认的配置,以及介绍各配置的优先级顺序。Spring Boot使用一个全局的配置文件application.pr...
  • cl_andywin
  • cl_andywin
  • 2016年12月20日 17:07
  • 7143

自定义schema文件。xml引入该规则。

第1步:创建02.xsd文件,定义相应的规则:首先相关定义: Order 指示器包含一下三种: All :规定它里面元素出现的顺序可以是任意的,但是相同的元素只能1次; ...
  • qq_31451471
  • qq_31451471
  • 2016年12月27日 01:34
  • 615

spring 源码探索--xml的自定义标签解析

protected void parseBeanDefinitions(Element root, BeanDefinitionParserDelegate delegate) { i...
  • crazyzhb2012
  • crazyzhb2012
  • 2016年11月20日 11:40
  • 860

WPF中XML的读写

初学WPF对于XML的用法有些不熟悉,在此纪录一下。 想要读取XML文件,首先在程序中引用XML相关类库,添加如下语句即可。using System.Xml; 1. XML文档创建 X...
  • fandongguang0702
  • fandongguang0702
  • 2017年01月14日 21:40
  • 1039
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:自定义XML配置文件的操作类
举报原因:
原因补充:

(最多只允许输入30个字)