IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Json 技术实现登入注册 -> 正文阅读

[游戏开发]Json 技术实现登入注册

using LitJson;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;

public class Model?
{
? ? //创建一个字典来储存账号信息
? ? public static Dictionary<string, string> allAccount = new Dictionary<string, string>();
? ? private static Model instance;
? ? private Model()
? ? {

? ? }

? ? public static Model getInstance()
? ? {
? ? ? ? if (null == instance) ? ? ? ? //生成单例
? ? ? ? instance = new Model();
? ? ? ? return instance;
? ? }

? ? public void setQQNumber(string a, string b) ? //存输入的账号
? ? {
? ? ? ? // 将数据存入字典中
? ? ? ? allAccount.Add(a, b);
? ? ? ? // 将数据存入Json文件中
? ? ? ? //声明一个字符串类型来储存文件的位置
? ? ? ? string path = Application.dataPath + "/Json/tu.txt";
? ? ? ? //记录储存文件的信息
? ? ? ? FileInfo file = new FileInfo(path);
? ? ? ? if (!file.Exists)
? ? ? ? {
? ? ? ? ? ? //如果找不到文件则警告
? ? ? ? ? ? Debug.LogError("找不到储存文件!!!!!");
? ? ? ? }
? ? ? ? //开始写入数据
? ? ? ? //创建一个写入对象,用于写入数据
? ? ? ? StreamWriter writer = new StreamWriter(path);
? ? ? ? JsonData jd = JsonMapper.ToJson(allAccount);
? ? ? ? //写入数据
? ? ? ? writer.Write(jd);
? ? ? ? //关闭写入器
? ? ? ? writer.Close();
? ? ? ? //刷新储存文件
? ? ? ? file.Refresh();
? ? ? ? // fs.Flush();
? ? }

? ? public Dictionary<string, string> getQQNumber()//返回账号
? ? {
? ? ? ? //读取数据
? ? ? ? //声明一个字符串类型来储存文件的位置
? ? ? ? string path = Application.dataPath + "/Json/tu.txt";
? ? ? ? //记录储存文件的信息
? ? ? ? FileInfo file = new FileInfo(path);
? ? ? ? if (!file.Exists)
? ? ? ? {
? ? ? ? ? ? //如果找不到文件则警告
? ? ? ? ? ? Debug.LogError("找不到储存文件!!!!!");
? ? ? ? }
? ? ? ? //读取数据
? ? ? ? string all = File.ReadAllText(path);
? ? ? ? allAccount = JsonMapper.ToObject<Dictionary<string, string>>(all);
? ? ? ? return allAccount;
? ? }
}
?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class View : MonoBehaviour
{//注册
? ? //public InputField account, password, passwords;
? ? public Text tap;
? ? Button fanHuiBut, resBut;
? ? Transform loginPanel, resPanle, successPanel, canvas;
? ? public InputField ac;
? ? public InputField pwd;
? ? public InputField pwds;
? ? void Start()
? ? {
? ? ? ? canvas = GameObject.Find("Canvas").transform;
? ? ? ? loginPanel = canvas.GetChild(0);
? ? ? ? resPanle = canvas.GetChild(3);
? ? ? ? successPanel = canvas.GetChild(4);
? ? ? ? fanHuiBut = resPanle.GetChild(7).GetComponent<Button>();
? ? ? ? fanHuiBut.onClick.AddListener(FanHui);
? ? ? ? resBut = resPanle.GetChild(8).GetComponent<Button>();
? ? ? ? resBut.onClick.AddListener(getInfoFromUser);

? ? }
? ? void FanHui()
? ? {
? ? ? ? resPanle.gameObject.SetActive(false);
? ? ? ? loginPanel.gameObject.SetActive(true);
? ? }
? ? void ResBut()
? ? {
? ? ? ? resPanle.gameObject.SetActive(false);
? ? ? ? successPanel.gameObject.SetActive(true);
? ? }

? ? public void showIntoToUser()//ui 输出账号 allAccount.ContainsKey(ac)账号
? ? {

? ? ? ? foreach (var tmp in Model.allAccount)
? ? ? ? {
? ? ? ? ? ? Debug.Log("账号:"+tmp.Key);
? ? ? ? ? ? Debug.Log("密码:"+tmp.Value);
? ? ? ? }
? ? }

? ? public void getInfoFromUser()//UI 输入账号
? ? {
? ? ? ? string name = ac.text;
? ? ? ? string password = pwd.text;
? ? ? ? string passwords = pwds.text;
? ? ? ? if (!ac.Equals("") || !pwd.Equals("") || !pwds.Equals(""))
? ? ? ? {
? ? ? ? ? ? if (Model.allAccount.ContainsKey(name))
? ? ? ? ? ? {

? ? ? ? ? ? ? ? tap.text = "账号已经存在";
? ? ? ? ? ? ? ? // tap.DOFade(0, 5);
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? if (password.Equals(passwords))
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ResBut();
? ? ? ? ? ? ? ? ? ? tap.text = "注册成功";
? ? ? ? ? ? ? ? ? ? Model.getInstance().setQQNumber(name, password);
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? tap.text = "两次密码不一致";
? ? ? ? ? ? ? ? ? ? // tap.DOFade(0, 5);
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? tap.text = "一个都不能为空";
? ? ? ? ? ? //tap.DOFade(0, 5);
? ? ? ? }
? ? ? ? if (this.gameObject.activeSelf)
? ? ? ? {
? ? ? ? ? ? StartCoroutine(Wait());
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? return;
? ? ? ? }
? ? }
? ? private IEnumerator Wait()
? ? {

? ? ? ? yield return new WaitForSeconds(3f);
? ? ? ? tap.text = null;
? ? ? ? //yield return null;
? ? }

}

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class RView : MonoBehaviour
{//登入
? ? public InputField ac;
? ? public InputField pwd;
? ?// public InputField pwds;
? ? //public static Login
? ? //public InputField account, password;
? ? public Text t;
? ? GameObject canvas;
? ? GameObject Login11, HandlePanel, registerPanel, retrievePanel;
? ? InputField nameInput, passwordInput;
? ? Button loginBut, resBut;

? ? void Start()
? ? {
? ? ? ? canvas = GameObject.Find("Canvas");
? ? ? ? Login11 = GameObject.Find("LoginPanel");
? ? ? ? retrievePanel = canvas.transform.GetChild(2).gameObject;
? ? ? ? HandlePanel = canvas.transform.GetChild(1).gameObject;
? ? ? ? registerPanel = canvas.transform.GetChild(3).gameObject;
? ? ? ? nameInput = Login11.transform.GetChild(6).GetComponent<InputField>();
? ? ? ? passwordInput = Login11.transform.GetChild(7).GetComponent<InputField>();
? ? ? ? loginBut = Login11.transform.GetChild(3).GetComponent<Button>();
? ? ? ? loginBut.onClick.AddListener(Login);
? ? ? ? resBut = Login11.transform.GetChild(4).GetComponent<Button>();
? ? ? ? resBut.onClick.AddListener(Res);

? ? }
? ? void Loginq()
? ? {
? ? ? ? Login11.SetActive(false);
? ? ? ? HandlePanel.SetActive(true);

? ? }
? ? void Res()
? ? {
? ? ? ? Login11.SetActive(false);
? ? ? ? registerPanel.SetActive(true);
? ? }
? ? public void Password()
? ? {
? ? ? ? Login11.SetActive(false);
? ? ? ? retrievePanel.SetActive(true);
? ? }
? ? public void showIntoToUser()//ui 输出账号
? ? {

? ? ? ? foreach (var tmp in Model.allAccount)
? ? ? ? {
? ? ? ? ? ? Debug.Log("账号:"+tmp.Key);
? ? ? ? ? ? Debug.Log("密码:"+tmp.Value);
? ? ? ? }
? ? }

? ? public void Login()//UI 输入账号
? ? {
? ? ? ? Model.getInstance().getQQNumber();
? ? ? ? string name = ac.text;
? ? ? ? string password = pwd.text;
? ? ? ? //string passwords = pwds.text;
? ? ? ? if (name == "" || password == "")
? ? ? ? {
? ? ? ? ? ? t.text = "用户名或密码为空,请重新输入";
? ? ? ? ? ? //t.DOFade(0, 5);
? ? ? ? ? ? // b = true;
? ? ? ? ? ? // return;
? ? ? ? }
? ? ? ? else if (Model .allAccount.ContainsKey(name))
? ? ? ? {//否则如果用户名正确
? ? ? ? ? ? if (password == Model .allAccount[name])
? ? ? ? ? ? {

? ? ? ? ? ? ? ? Loginq();
? ? ? ? ? ? ? ? //account.text="";
? ? ? ? ? ? ? ? //this.password.text="";
? ? ? ? ? ? ? ? //如果与这个用户名一对的密码正确
? ? ? ? ? ? ? ? // return;
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? t.text = "密码错误";
? ? ? ? ? ? ? ? // t.DOFade(0, 5);
? ? ? ? ? ? ? ? //如果用户名正确但是密码不正确
? ? ? ? ? ? ? ? // ?b = true;
? ? ? ? ? ? ? ? // return;
? ? ? ? ? ? }

? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? t.text = "用户名或密码错误,请重新输入";

? ? ? ? ? ? // t.DOFade(0, 5);
? ? ? ? ? ? //b = true;
? ? ? ? ? ? //其他情况输出用户名或者密码错误
? ? ? ? ? ? // return;
? ? ? ? }
? ? ? ? if (this.gameObject.activeSelf)
? ? ? ? {
? ? ? ? ? ? StartCoroutine(Wait());
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? return;
? ? ? ? }
? ? }
? ? private IEnumerator Wait()
? ? {

? ? ? ? yield return new WaitForSeconds(3f);
? ? ? ? t.text = null;
? ? ? ? //yield return null;
? ? }
}
?

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-03-24 00:54:10  更:2022-03-24 00:56:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 20:32:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码