一、int.TryParse()
public static bool TryParse(string s, out Int32 result);
如果转换成功则返回true。否则返回false
int.TryParse(string s,out int i) 的参数: s是要转换的字符串,i 是转换的结果。
- 执行成功返回true,输出转换成功的值;执行失败返回0
经过测试发现如下: int i=0; 1、s 为null int.TryParse(null,out i) false 2、s 为空字符串 int.TryParse(“”,out i) false 3、s字符串中带有 空格。 int.TryParse(“1 “,out i) true int.TryParse(” 1”,out i) true int.TryParse(” 1 “,out i) true int.TryParse(“1 2”,out i) false 4、非数字型字符串 肯定是 false了。 5、在数据库的操作中,经常会遇到了 DBNull int.TryParse(System.DBNull,out i) “System.DBNull”是一个“类型”,这在给定的上下文中无效 int.TryParse(System.DBNull.Value,out i) 与“int.TryParse(string, out int)”最匹配的重载方法具有一些无效参数 int.TryParse(System.DBNull.Value.ToString(),out i) false
判断一个输入框是否为整数 int baseNum = default(int); if (!int.TryParse(txtBaseNum.Text, out baseNum)) { MessageBox.Show("请输入一个整数。"); return; }
//语法:int.TryParse(str, out res) int res = 1; int i = 3; string str = ""; if(int.TryParse(str, out res)){ //因为str是字符串类型,所以此次转换肯定是失败的,失败返回false //所以不会进来循环内部 //由于执行失败,所以res的值是0 } if(int.TryParse(i, out res)){ //因为i是int类型,所以此次转换是成功的,成功返回true //所以会进入到循环内部 //由于执行成功,所以res的值是i,也就是3 } ———————————————— 版权声明:本文为CSDN博主「Dear_BigTiger」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/Dear_BigTiger/article/details/81033844
总结:TryParse可以为我们的程序减少报错概率,帮助我们准确的完成业务需求,也可以用来判断用户输入的时间、金额、数量等是不是符合规则
// // 摘要: // 将两个字符串组合成一个路径。 // // 参数: // path1: // 要组合的第一个路径。 // // path2: // 要组合的第二个路径。 // // 返回结果: // 已组合的路径。 如果指定的路径之一是零长度字符串,则该方法返回其他路径。 如果 path2 包含绝对路径,则该方法返回 path2。 // // 异常: // T:System.ArgumentException: // path1 或 path2 包含一个或多个中定义的无效字符 System.IO.Path.GetInvalidPathChars。 // // T:System.ArgumentNullException: // path1 或 path2 为 null。 public static string Combine(string path1, string path2);
二、日期转换()
1、【c#】将DataTable的时间精确到毫秒
Convert.ToDateTime(dt.Rows[0]["pay_time"]).ToString("yyyy-MM-dd hh:mm:ss.fff");
先将object类型的dt.Rows[0]["pay_time"]转换成DateTime,转换字符串的时候格式化。
现在的日期是12小时制的,有时候我们想要的是24小时制,这时候用“HH:mm:ss.fff”就实现了想要的效果。
2、2020-05-13T17:43:22 转化为正常时间
string sTime1 =‘2020-05-13T17:43:22 ’
string sTime = Convert.ToDateTime(sTime1).ToString();
2、日期型转换成字符型