public class ConfigManager
{
//成员变量
/// <summary>
/// 配置文件对象
/// </summary>
XmlDocument _Config = null;
/// <summary>
/// 登录配置
/// </summary>
XmlElement _LoginConig = null;
/// <summary>
/// 配置文件路径
/// </summary>
string _ConfigPath = "";
/// <summary>
/// 用户名
/// </summary>
public string UserName
{
get { return _LoginConig.SelectSingleNode("UserName").InnerText; }
set { _LoginConig.SelectSingleNode("UserName").InnerText = value; }
}
/// <summary>
/// 密码
/// </summary>
public string PassWord
{
get { return Base64Decode(_LoginConig.SelectSingleNode("PassWord").InnerText); }
set { _LoginConig.SelectSingleNode("PassWord").InnerText = Base64Encode(value); }
}
/// <summary>
/// 记住密码
/// </summary>
public string RememberPwd
{
get { return _LoginConig.SelectSingleNode("RememberPwd").InnerText; }
set { _LoginConig.SelectSingleNode("RememberPwd").InnerText = value; }
}
/// <summary>
/// 载入配置文件
/// </summary>
/// <returns></returns>
public bool LoadConfig()
{
_ConfigPath = Environment.CurrentDirectory + "\\" + "LoginInfo.xml";
//不存在配置则创建
if (!File.Exists(_ConfigPath))
{
StreamWriter sw = File.CreateText(_ConfigPath);
string content = @"<config>
<LoginConfig>
<UserName></UserName>
<PassWord></PassWord>
<RememberPwd></RememberPwd>
</LoginConfig>
</config>";
sw.Write(content);
sw.Flush();
sw.Close();
}
_Config = new XmlDocument();
_Config.Load(_ConfigPath);//装载XML文档
_LoginConig = (XmlElement)_Config.DocumentElement.ChildNodes[0];
return true;
}
public bool Save()
{
if (string.IsNullOrEmpty(_ConfigPath))
return false;
_Config.Save(_ConfigPath);
return true;
}
/// <summary>
/// 加密
/// </summary>
/// <param name="str"></param>
private string Base64Encode(string str)
{
if (string.IsNullOrEmpty(str))
return str;
byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(str);
return Convert.ToBase64String(encbuff);
}
/// <summary>
/// 解密
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
private string Base64Decode(string str)
{
if (string.IsNullOrEmpty(str))
return str;
byte[] decbuff = Convert.FromBase64String(str);
return System.Text.Encoding.UTF8.GetString(decbuff, 0, decbuff.Length);
}
}
{
//成员变量
/// <summary>
/// 配置文件对象
/// </summary>
XmlDocument _Config = null;
/// <summary>
/// 登录配置
/// </summary>
XmlElement _LoginConig = null;
/// <summary>
/// 配置文件路径
/// </summary>
string _ConfigPath = "";
/// <summary>
/// 用户名
/// </summary>
public string UserName
{
get { return _LoginConig.SelectSingleNode("UserName").InnerText; }
set { _LoginConig.SelectSingleNode("UserName").InnerText = value; }
}
/// <summary>
/// 密码
/// </summary>
public string PassWord
{
get { return Base64Decode(_LoginConig.SelectSingleNode("PassWord").InnerText); }
set { _LoginConig.SelectSingleNode("PassWord").InnerText = Base64Encode(value); }
}
/// <summary>
/// 记住密码
/// </summary>
public string RememberPwd
{
get { return _LoginConig.SelectSingleNode("RememberPwd").InnerText; }
set { _LoginConig.SelectSingleNode("RememberPwd").InnerText = value; }
}
/// <summary>
/// 载入配置文件
/// </summary>
/// <returns></returns>
public bool LoadConfig()
{
_ConfigPath = Environment.CurrentDirectory + "\\" + "LoginInfo.xml";
//不存在配置则创建
if (!File.Exists(_ConfigPath))
{
StreamWriter sw = File.CreateText(_ConfigPath);
string content = @"<config>
<LoginConfig>
<UserName></UserName>
<PassWord></PassWord>
<RememberPwd></RememberPwd>
</LoginConfig>
</config>";
sw.Write(content);
sw.Flush();
sw.Close();
}
_Config = new XmlDocument();
_Config.Load(_ConfigPath);//装载XML文档
_LoginConig = (XmlElement)_Config.DocumentElement.ChildNodes[0];
return true;
}
public bool Save()
{
if (string.IsNullOrEmpty(_ConfigPath))
return false;
_Config.Save(_ConfigPath);
return true;
}
/// <summary>
/// 加密
/// </summary>
/// <param name="str"></param>
private string Base64Encode(string str)
{
if (string.IsNullOrEmpty(str))
return str;
byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(str);
return Convert.ToBase64String(encbuff);
}
/// <summary>
/// 解密
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
private string Base64Decode(string str)
{
if (string.IsNullOrEmpty(str))
return str;
byte[] decbuff = Convert.FromBase64String(str);
return System.Text.Encoding.UTF8.GetString(decbuff, 0, decbuff.Length);
}
}