zoukankan      html  css  js  c++  java
  • C# winform 使用json文件记录用户名、密码

    1.在NuGet安装Newtonsoft.Json(这里只用到解码);

    2.窗体设计

    3.代码

    using System.IO;
    //using Newtonsoft.Json;
    using Newtonsoft.Json.Linq;
            private void UserLogin_Load(object sender, EventArgs e)
            {
                ReadJson();//读取配置文件        
            }
            private void ReadJson()
            {//读取配置文件
                string jsonPath = Application.StartupPath + @"userInfo.json";
                if (File.Exists(jsonPath))
                {
                    try
                    {
                        string jsonStr = File.ReadAllText(jsonPath);
                        JObject jsonObj = JObject.Parse(jsonStr);
                        if (jsonObj != null)
                        {//读取用户信息
                            if (jsonObj["id"] != null)
                            {
                                switch (jsonObj["id"].ToString())
                                {//是否记住用户信息
                                    case "0"://不记住登陆信息
                                        RdbNotSave.Checked = true;
                                        break;
                                    case "1"://记住账号
                                        RdbSaveUserName.Checked = true;
                                        break;
                                    case "2"://记住账号和密码
                                        RdbSaveBoth.Checked = true;
                                        break;
                                    default:
                                        RdbNotSave.Checked = false;
                                        RdbSaveUserName.Checked = false;
                                        RdbSaveBoth.Checked = false;
                                        break;
                                }
                            }
                            if (jsonObj["userName"] != null)
                            {
                                TxbUsername.Text = jsonObj["userName"].ToString();
                            }
                            if (jsonObj["passWord"] != null)
                            {
                                TxbPassword.Text = jsonObj["passWord"].ToString();
                            }
                        }
                    }
                    catch
                    {
                    }
                }
            }
            private void WriteJson(string id, string userName, string passWord)
            {//写入配置文件
                string jsonPath = Application.StartupPath + @"userInfo.json";
                string jsonStr = "{"id":"" + id + "","userName":"" + userName + "","passWord":"" + passWord + ""}";
                File.WriteAllText(jsonPath, jsonStr);
            }
            private void BtnLogin_Click(object sender, EventArgs e)
            {//登录按钮
                //连接数据库进行登录检测,这里操作数据库代码省略if (/**/)
                {//登成功
                   //判断记录状态
                   if (RdbNotSave.Checked)
                   {//不记住登陆信息
                      WriteJson("0", "", "");
                   }
                   else if (RdbSaveUserName.Checked)
                   {//记住账号
                      WriteJson("1", TxbUsername.Text.Trim(), "");
                   }
                   else if (RdbSaveBoth.Checked)
                   {//记住账号和密码
                      WriteJson("2", TxbUsername.Text.Trim(), TxbPassword.Text.Trim());
                   }
                }
            }
    
            private void BtnCancel_Click(object sender, EventArgs e)
            {//退出按钮
                Environment.Exit(0);//退出软件
            }

     4:josn文件内容

    {"id":"2","userName":"a","passWord":"2"}
  • 相关阅读:
    CentOS7 时间设置与网络同步
    CentOS7 系统升级,删除centos7开机界面多余选,升级至最新的内核
    Docker 编排工具Rancher 2.0
    Docker 编排工具Rancher 1.6.18
    通过WSL在Windows下安装子Linux系统
    Docker 使用Dockerfile构建redis镜像
    初探PHP多进程
    nginx转发
    mime类型
    socket php
  • 原文地址:https://www.cnblogs.com/nb08611033/p/8984172.html
Copyright © 2011-2022 走看看