c#控制台编写用户注册程序,实现用户注册

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#控制台编写用户注册程序,实现用户注册相关的知识,希望对你有一定的参考价值。

编写控制台应用程序,实现用户注册(要求输入用户名,密码(密码至少包含一个字母),电子邮箱地址),并对各信息项进行验证,若不符合规范,要求重新输入。

题目的说明不是特别详细. 简单的写了一个参考示例

思路: 利用正则表达式进行匹配.如果不符合要求,就重新输入

using System;
using System.Text.RegularExpressions;

namespace RegDemo

    class Program
    
        static void Main(string[] args)
        
            //数组 存储错误提示
            string[] tips = 
                "用户名由字母组成,长度[5~10]",
                "密码由数字和字母组成,至少1个字母,长度[6~12]",
                "邮箱需要有@符号,且符合邮箱的规则"
            ;
            
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("****************注 册 页****************");
            Console.ForegroundColor = ConsoleColor.White;

            Console.Write("请输入用户名:");
            string userName = InputInfo("^[a-zA-z]5,10",tips[0]);
            Console.Write("请输入密  码:");
            string userPswd = InputInfo("^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]6,12$", tips[1]);
            Console.Write("请输入邮  箱:");
            string userEmail = InputInfo(@"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$", tips[2]);
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("****************注册成功****************");
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("用户名:0",userName);
            Console.WriteLine("密  码:0", userPswd);
            Console.WriteLine("邮  箱:0", userEmail);

            Console.ReadKey();
        
        /// <summary>
        /// 获取用户的输入
        /// </summary>
        /// <param name="reg">正则表达式</param>
        /// <param name="text">如果输入有误的提示文字</param>
        /// <returns>一个符合要求的字符串</returns>
        public static string InputInfo(string reg, string text)
        
            string str = "";
            Regex regex = new Regex(reg);
            while (true)
            
                str = Console.ReadLine().Trim();
                if (regex.IsMatch(str))//用正则表达式进行匹配
                
                    break;
                
                else
                
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine("提示:"+text);
                    Console.ForegroundColor = ConsoleColor.White;
                    Console.Write("Sorry!请重新输入:");
                    continue;
                
            
            return str;
        
    

效果图

参考技术A 我会 参考技术B 你好,这个注册程序我可以写,验证的时候需要正则吗?

C#通过写注册表设置程序随系统启动

要将编写的程序设置成随系统启动,可以通过读写注册表操作实现。有几个要注意的地方:

一是引入Microsoft.Win32这个命名空间,此空间用来提供操作注册表的类—— Registry和RegistryKey;

二是在win7、win10等系统中,系统会拒绝对注册表“LOCAL_MACHINE”的操作,提示“对注册表项“HKEY_LOCAL_MACHINE\\...”的访问被拒绝。”这时可以通过对“HKEY_CURRENT_USER”的操作实现对当前用户的随系统启动功能。

三是在“HKEY_CURRENT_USER”中,设置随系统启动的地址在“HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run”中。

代码如下:

using System.Windows.Forms;
using Microsoft.Win32;


    private void SetAutoRun() 
        //获取当前应用程序的可执行文件路径(包括可执行文件名称)
        //为了避免路径中的“/”和“\\”不统一,所以通过Replace函数统一成“\\”
        string appPath = Application.ExecutablePath.Replace('/','\\\\');
        //获取文件名
        string appName = appPath.Substring(appPath.LastIndexOf("\\\\")+1);
        //通过在注册表系统启动项“HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run”中写入当前程序
        RegistryKey rKey = Registry.CurrentUser.CreateSubKey("SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run");
        rKey.SetValue(appName,appPath);
    

 

以上是关于c#控制台编写用户注册程序,实现用户注册的主要内容,如果未能解决你的问题,请参考以下文章

用C#编写猜数字游戏,

用c#编写猜数游戏要求用户在文本框中输入1到10之间的一个数字。然后单击[猜猜]按钮产生一个随机数字,用户

在 if 语句 c# 中分配变量

C# 10分钟完成百度人脸识别

C#通过写注册表设置程序随系统启动

C#通过写注册表设置程序随系统启动