首页 > 代码库 > 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)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。