C#初级本地化登入

引用头文件

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;

序列化

[Serializable]

public class Message
{
    public string Accounttext;
    public string passwordtext;
}

方法

方法

 void Start()
    {
        LoginBt.onClick.AddListener(LoginFunction);
        singoinBt.onClick.AddListener(SingoinFunction);
        ml = new Messagelist();
    }

判断输入是否为空

  bool IsNull()
    {
        if (Account.text == string.Empty)
        {
            warning.gameObject.SetActive(true);
            warningtext.text = "账号不能为空";
            return true;
        }
  if (Password.text == "")
        {
            warning.gameObject.SetActive(true);
            warningtext.text = "密码不能为空";
            return true;
        }
 Accounttext = Account.text;
        passwordtext = Password.text;
        return false;
void LoginFunction()
    {
        if (IsNull())
        {
            return;
        }
        if (FileFunction(Path, true))
        {
            return;
        }
        for (int i = 0; i < ml.list.Count; i++)
        {
            if (ml.list[i].Accounttext == Accounttext)
            {
                if (ml.list[i].passwordtext == passwordtext)
                {
                    print("登录成功");
                      return;
   else
                {
                    warning.gameObject.SetActive(true);
                    warningtext.text = "密码错误";
                    return;
                }
  else if (i == ml.list.Count - 1)
            {
                warning.gameObject.SetActive(true);
                warningtext.text = "账号不存在,请注册";
            }

注册的方法

  void SingoinFunction()
    {
        if (IsNull())
        {
            return;
        }
        if (FileFunction(Path))
        {
            for (int i = 0; i < ml.list.Count; i++)
            {
                if (ml.list[i].Accounttext == Accounttext)
                {
                    warning.gameObject.SetActive(true);
                    warningtext.text = "账号已存在";
                    return;
                }
            }
        }
    实例化用户把她添加到列表然后实例化
 Message m = new Message();
        m.Accounttext = Accounttext;
        m.passwordtext = passwordtext;
        ml.list.Add(m);
        FileStream fs = new FileStream("D://message.txt", FileMode.OpenOrCreate);
        BinaryFormatter bf = new BinaryFormatter();
        bf.Serialize(fs, ml);
        fs.Close();
        fs.Dispose();
        warning.gameObject.SetActive(true);
        warningtext.text = "注册成功";
 bool FileFunction(string s, bool flag = false)
    {
        FileStream fs = new FileStream(s, FileMode.OpenOrCreate);
        BinaryFormatter bf = new BinaryFormatter();
        if (fs.Length != 0)
        {
            ml = (Messagelist)bf.Deserialize(fs);
            if (!flag)
            {
                fs.Close();
                fs.Dispose();
                return true;
            }
        }

判断文件是否存在

 else if (flag)
        {
            warning.gameObject.SetActive(true);
            warningtext.text = "账号不存在,请注册";
            fs.Close();
            fs.Dispose();
            return true;
        }
        fs.Close();
        fs.Dispose();
        return false;
    }
    

显示账号注册成功弹出显示框

在这里插入图片描述
账号为空时弹出显示框

在这里插入图片描述
最后显示登入成功

在这里插入图片描述最后就显示登入成功啦。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值