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

2018-06-17 22:23:02来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

代码:

  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.Nickname_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             //TODO
103 
104             //其他的输入框同理
105 
106             //TODO
107             else
108             {
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.ToInt32
124 
125             if (!int.TryParse(this.Age_textBox.Text, out tempInt) || CheckIntIsNegative(Convert.ToInt32
126                 (int.TryParse(this.Age_textBox.Text, out tempInt))))
127             {
128                 MessageBox.Show("年龄输入错误!");
129                 this.Age_textBox.Select();
130                 return false;
131             }
132             //TODO
133 
134             //其他的输入框同理
135 
136             //TODO
137             else
138             {
139                 return true;
140             }
141         }
142 
143         private bool CheckIntIsNegative(int m)
144         {
145             if (m < 0)
146             {
147                 return false;
148             }
149             else
150             {
151                 return true;
152             }
153         }
154 
155         private bool CheckDoubleIsNegative(double m)
156         {
157             if (m < 0)
158             {
159                 return false;
160             }
161             else
162             {
163                 return true;
164             }
165         }
166 
167         private void Cancel_button_Click(object sender, EventArgs e)
168         {
169             this.Close();
170         }
171     }
172 }

 


效果图:

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:是时候为编程界做点贡献了

下一篇:图书管理系统