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#控制台编写用户注册程序,实现用户注册的主要内容,如果未能解决你的问题,请参考以下文章