`
niunan
  • 浏览: 723313 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

C#控制台应用程序中输入密码时用掩码显示

    博客分类:
  • .NET
阅读更多
static void Main(string[] args)
        {
            string password = string.Empty; 
            ConsoleKeyInfo info; 
            do
            {
                info = Console.ReadKey(true);
                if (info.Key != ConsoleKey.Enter && info.Key != ConsoleKey.Backspace && info.Key != ConsoleKey.Escape && info.Key != ConsoleKey.Tab && info.KeyChar != '\0')
                {
                    password += info.KeyChar; 
                    Console.Write('*');
                }
            } while (info.Key != ConsoleKey.Enter); 
            Console.WriteLine(); 
            Console.WriteLine(password);

        }


if
是判断按键是否为可打印字符键。
分享到:
评论
1 楼 zk00790 2009-07-28  
namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            string password = string.Empty;
            ConsoleKeyInfo info;
            do
            {
                if (info.Key != ConsoleKey.Enter && info.Key != ConsoleKey.Backspace && info.Key != ConsoleKey.Escape && info.Key != ConsoleKey.Tab && info.KeyChar != '\0')
                {
                    password += info.KeyChar;
                    Console.Write("*");
                }
                if (info.Key == ConsoleKey.Backspace)
                {
                    password = password.Substring(0, password.Length - 1);
                    Console.Write(" ");
                }
            } while (info.Key != ConsoleKey.Enter);
            Console.WriteLine();
            Console.WriteLine(password);
        }
    }
}


稍微修改了一下,是他可以删除输入错误的字符~~~
不知道有没有什么错误

相关推荐

    C#获得系统打开的端口和状态

    在C#编程中,获取系统打开的端口和状态是一项重要的任务,这通常涉及到网络通信和服务器应用程序的开发。为了实现这一目标,开发者需要利用.NET Framework提供的System.Net.NetworkInformation命名空间中的类。以下...

    C#登录设计界面

    在C#编程中,设计一个登录界面是创建任何应用程序的基础步骤。这个登录界面不涉及数据库连接,而是专注于窗体数据的传递,这是一个重要的概念,尤其是对于初学者来说。在这个项目中,我们将探讨如何使用C#的Windows ...

    网段扫描练习_C#网段扫描练习_visualstudio2019_

    在Visual Studio 2019中,你可以创建一个新的C#控制台应用程序项目,然后逐步实现以上功能。项目文件"网段扫描练习"可能包含了源代码文件(.cs),其中定义了主程序类、网络扫描类以及其他辅助类。源代码可能包括...

    热点Wi-Fi c#制作,windows环境

    在创建热点Wi-Fi的过程中,我们可以使用C#编写控制台应用程序或者Windows Forms应用,调用`netsh`命令来实现功能。 ### 4. ICS(Internet Connection Sharing) ICS是Windows内置的功能,允许一台计算机共享其...

    C# pdf图幅统计小程序

    在IT行业中,C#是一种广泛使用的编程语言,尤其在开发桌面应用、游戏和Web服务等领域。本项目聚焦于一个特定的实用程序——“C# pdf图幅统计小程序”,这是一个利用C#编写的软件,用于分析PDF文档中的图像数量,帮助...

    C#基于银行储柜序列化例子

    密码的掩码表示方法是指在控制台中输入密码时,以星号或其他字符代替实际字符显示,以保护用户隐私。在C#中,我们可以使用Console.Write方法和控制台输入流的回显禁用功能来实现这一功能。 总的来说,"C#基于银行...

    C# 局域网IP扫描 实例源码(网络操作)

    在IT行业中,网络操作是必不可少的一部分,特别是在网络编程和系统管理中。对于C#开发者来说,了解如何进行局域网IP扫描是...通过理解和分析这个实例,开发者可以进一步掌握网络操作的核心技术,并能应用到实际项目中。

    可视化程序设计案例教程习题答案完整.pdf

    本篇内容主要涵盖了C#编程语言及其在.NET Framework中的应用,以及使用Visual Studio 2015(VS 2015)进行Windows应用程序开发的基础知识。我们将深入讨论以下几个方面: 1. C#与.NET Framework的关系:C#是一种专...

    基于c#的简单的网卡信息检测及流量检测

    在.NET框架中,C#是一种常用的编程语言,用于开发各种应用程序,包括系统级工具,如网络监控工具。本文将深入探讨如何使用C#进行简单的网卡信息检测和流量检测。 一、获取网卡信息 网卡信息主要包括网卡名称、MAC...

    C#全能速查宝典

    2.2.16 MaskedTextBox控件——使用掩码区分用户输入 166 2.2.17 Multiline属性——是否为多行输入数据 169 2.2.18 PasswordChar属性——取代用户输入而显示的字符 170 2.2.19 Redo方法——重新应用控件中上次撤销的...

    C#网络IP扫描

    C#提供了Thread、Task等类来支持多线程,或者使用async/await关键字进行异步编程,这样可以避免阻塞主线程,提高程序响应性。 5. **异常处理**:在网络编程中,网络连接失败、超时等问题很常见,因此我们需要对可能...

    c#获取系统性能方法(wmi)

    在C#编程中,利用Windows ...此外,`ConsoleApplication1`可能是一个简单的C#控制台应用程序示例,用于演示如何实现上述功能。在实际应用中,你可能需要将这些功能封装到类库或服务中,以便在不同场景下调用。

    C#常用的42个类

    在C#编程语言中,有许多核心类库提供了一系列丰富的功能,使得开发者能够高效地构建桌面应用、Web应用、移动应用以及游戏。以下是一些C#中常用的42个类的详细说明,它们涵盖了数据处理、文件操作、网络通信等多个...

    C#课程设计(银行管理系统,700行代码)

    2. **数据安全性**: 直接在控制台上输入密码可能不安全,应考虑更安全的密码输入方式,如掩码输入。 3. **性能优化**: 当客户数量增加时,线性的ID重复检查可能会降低性能,可以考虑使用哈希表或树状结构优化查找...

    ,net复习题

    - `ErrorMessage`属性在验证控件中用于指定验证失败时显示的错误消息,优先级高于`Text`属性。 ### 开发环境和运行要求 - 运行ASP.NET程序不仅需要Visual Studio(VS.NET)作为开发环境,还需要安装**.NET ...

    给需要的经典C#试题正好用

    【标题】与【描述】中提到的是一个C#相关的考试试卷,主要针对C#控制台和窗体应用。然而,试卷内容实际上涉及的是网络技术知识,特别是路由协议和网络互联设备。以下将详细解释这些知识点: 1. **路由协议**:路由...

    ifinfo2_interface_C#源码_

    C#是一种广泛使用的面向对象的编程语言,尤其适用于开发Windows平台上的应用程序,包括与网络交互的应用。 在C#中,我们可以利用.NET Framework或.NET Core提供的丰富的类库来获取网络接口信息。其中,System.Net....

    C# IP地址段端口扫描器源码

    在这个IP地址段端口扫描器项目中,我们将探讨如何使用C#来实现这个功能。 1. **IP地址和端口基础**: - **IP地址**:互联网协议(IP)地址是网络上设备的唯一标识符,通常表示为IPv4或IPv4v6格式。例如,192.168....

    自定义一个包含10个元素的一维int数组,并在声明语句中为其赋值;使用循环语句,随机选取该数组中的5个不重复的数据

    在C#编程中,创建一个包含10个元素的一维整型(int)数组并在声明时直接赋值是一项基本操作。接下来我们将深入探讨如何实现这一任务,以及如何使用循环语句和随机数生成来选取数组中的5个不重复的元素。 首先,让我们...

    C#常用的42个类,学习借鉴必备

    9. **System.Console**: 提供控制台输入输出功能,如`WriteLine`, `ReadKey`等。 10. **System.Exception**: 异常处理的基础类,理解异常层次结构以及如何抛出和捕获异常。 11. **System.Threading.Thread**: 处理...

Global site tag (gtag.js) - Google Analytics