首页 > 代码库 > C#学习笔记-输入数据判断(int、double、string)

C#学习笔记-输入数据判断(int、double、string)

代码:

  1 using System;  2 using System.Windows.Forms;  3   4 namespace CheckInput  5 {  6     public partial class Form1 : Form  7     {  8         public Form1()  9         { 10             InitializeComponent(); 11         } 12  13         private void Sure_button_Click(object sender, EventArgs e) 14         { 15              16             if (CheckIsLegal() && CheckIsNull()) 17             { 18                 //TODO 19             } 20  21             //just for test 22             if (CheckIsNull()&&CheckIsLegal_test()) 23             { 24                 //TODO 25             } 26         } 27  28         /// <summary> 29         /// 判断输入是否合法 30         /// </summary> 31         /// <returns></returns> 32         private bool CheckIsLegal() 33         { 34             string[] SpecialString = new string[] { "/", @"\", ":", "*", "?", "<", ">", "|" }; 35             //注:反斜杠“\”是转义字符 36             //“\‘”单引号;“\"”双引号;“\\”反斜杠;“\0”空;“\a”警告;“\b”退格;“\f”换页;“\n”换行;“\r”换行 37             //注:用@ 符号加在字符串前面表示其中的转义字符“不”被处理 38             int tempInt = 0; 39  40             for (int i = 0; i < SpecialString.Length; i++) 41             { 42                 if (this.Name_textBox.Text.Trim().Contains(SpecialString[i])) 43                 { 44                     MessageBox.Show(@"姓名不能包含下列字符:/ \ : * ? < > |"); 45                     this.Name_textBox.Select(); 46                     return false; 47                 } 48                 if (this.Nickname_textBox.Text.Contains(SpecialString[i])) 49                 { 50                     MessageBox.Show(@"姓名不能包含下列字符:/ \ : * ? < > |"); 51                     this.Name_textBox.Select(); 52                     return false; 53                 } 54                 //TODO 55  56                 //其他的输入框同理 57  58                 //TODO 59             } 60  61             //注:string输入变成int型:1.int.TryParse;2.Convert.ToInt32(); 62             //注:int转string:1.Convert.ToString(); 63             if (!int.TryParse(this.Age_textBox.Text, out tempInt) || tempInt < 0)  64             { 65                 MessageBox.Show("年龄输入错误!"); 66                 this.Age_textBox.Select(); 67                 return false; 68             } 69             //TODO 70  71             //其他的输入框同理 72  73             //TODO 74             else 75             { 76                 return true; 77             } 78         } 79  80         /// <summary> 81         /// 判断输入框是否为空 82         /// </summary> 83         /// <returns></returns> 84         private bool CheckIsNull() 85         { 86             //Trim()删除字符串头部及尾部出现的空格=>这里判断是否为空,所以必须加上 87             //删除的过程为从外到内,直到碰到一个非空格的字符为止,所以不管前后有多少个连续的空格都会被删除掉。 88             //注:TrimStart()=>只删除字符串的头部的空格 89             //注:TrimEnd()=>只删除字符串尾部的空格 90             if (this.Name_textBox.Text.Trim()=="") 91             { 92                 MessageBox.Show(@"姓名不能为空!"); 93                 this.Name_textBox.Select(); 94                 return false; 95             } 96             if (this.Nickname_textBox.Text.Trim() == "")  97             { 98                 MessageBox.Show(@"昵称不能为空!"); 99                 this.Nickname_textBox.Select();100                 return false;101             }102             //TODO103 104             //其他的输入框同理105 106             //TODO107             else108             {109                 return true;110             }111         }112 113 114         /// <summary>115         /// 开始不理解 out tempInt 的作用116         /// 顺便复习一下string转化为int的过程117         /// </summary>118         /// <returns></returns>119         private bool CheckIsLegal_test()120         {121             int tempInt = 0;122 123             //注:Convert.ToInt32124 125             if (!int.TryParse(this.Age_textBox.Text, out tempInt) || CheckIntIsNegative(Convert.ToInt32126                 (int.TryParse(this.Age_textBox.Text, out tempInt))))127             {128                 MessageBox.Show("年龄输入错误!");129                 this.Age_textBox.Select();130                 return false;131             }132             //TODO133 134             //其他的输入框同理135 136             //TODO137             else138             {139                 return true;140             }141         }142 143         private bool CheckIntIsNegative(int m)144         {145             if (m < 0)146             {147                 return false;148             }149             else150             {151                 return true;152             }153         }154 155         private bool CheckDoubleIsNegative(double m)156         {157             if (m < 0)158             {159                 return false;160             }161             else162             {163                 return true;164             }165         }166 167         private void Cancel_button_Click(object sender, EventArgs e)168         {169             this.Close();170         }171     }172 }

 


效果图:

技术分享技术分享

 

C#学习笔记-输入数据判断(int、double、string)