dat保存登陆密码

  
    
winform -- 记住密码 收藏

要引用IO包

private string accountFilePath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + " \\accounts.dat " ;

private IDictionary < string , string > accounts = new SortedList < string , string > ();

/// <summary>
/// 记住密码
/// </summary>
private void ReloadAccounts()
{
this .txtUserName.AutoCompleteCustomSource.Clear();
accounts.Clear();
if ( ! File.Exists(accountFilePath))
{
return ;
}
using (StreamReader reader = new StreamReader(accountFilePath))
{
while ( true )
{
string username = reader.ReadLine();
if ( string .IsNullOrEmpty(username)) break ;
string password = reader.ReadLine();
if ( string .IsNullOrEmpty(password)) break ;
accounts.Add(username, password);
txtUserName.AutoCompleteCustomSource.Add(username);
}
}
}

/// <summary>
/// 登录事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnLogin_Click( object sender, EventArgs e)
{
if (accounts.ContainsKey( this .txtUserName.Text))
{
accounts[
this .txtUserName.Text] = this .txtUserPass.Text;
}
else
{
accounts.Add(
this .txtUserName.Text, this .txtUserPass.Text);
}

using (StreamWriter writer = new StreamWriter(accountFilePath))
{
foreach (KeyValuePair < string , string > account in accounts)
{
writer.WriteLine(account.Key);
writer.WriteLine(account.Value);
}
}

ReloadAccounts();

string user = this .txtUserName.Text.Trim();
// 加密
string bbb = Crypto.EncryptData( " jm " , this .txtUserPass.Text.Trim());
string pwd = bbb;

string filter = " username=' " + user + " ' " + " and password=' " + pwd + " ' " ;

DataTable loginTable
= manager.selectAll( " userlist " , " * " , filter);

if ( this .txtUserName.Text.Trim() == "" || bbb == "" )
{
MessageBox.Show(
" 用户名或密码不能为空! " );
this .txtUserName.Focus();
}
else if (loginTable.Rows.Count == 0 )
{
MessageBox.Show(
" 用户名或密码错误! " );
this .txtUserName.Focus();
}
else
{
MessageBox.Show(
" 登录成功! " );
}
}

// 当鼠标离开用户名时自动获得密码
private void txtUserName_Leave( object sender, EventArgs e)
{
string password = string .Empty;
if (accounts.TryGetValue( this .txtUserName.Text, out password))
this .txtUserPass.Text = password;
}



本文来自CSDN博客,转载请标明出处:http:
// blog.csdn.net/zhangjianjianjianjia/archive/2009/11/06/4776397.aspx

你可能感兴趣的:(密码)