Tag: tryparse

DateTime.TryParseExact未按预期工作

任何人都可以解释为什么以下片段返回true? 根据“d”自定义格式说明符的文档,“一位数字日的格式没有前导零”。 那么,为什么当我给一个前导零的一位数日时,TryParseExact不会失败? DateTime x; return DateTime.TryParseExact ( “01/01/2001″, @”d\/MM\/yyyy”, null, System.Globalization.DateTimeStyles.None, out x ); UPDATE 我想也许我原本不清楚。 我真正想要的是: 为什么TryParseExact接受一些不完全匹配的值? 从我看到的所有文档中,’d’匹配’01’和’1’就像’MM’匹配’March’和’03’一样。 这里的问题不是值是等价的,它们与格式不匹配。 相关的文档片段是: 来自TryParseExact : 字符串表示的格式必须与指定的格式完全匹配。 来自’d’说明符 : 一位数字日的格式没有前导零。 我似乎非常清楚’01’有一个前导0,因此不完全匹配’d’。

int.TryParse = null如果不是数字?

如果无法将字符串解析为int,是否有一些返回null的方法? 有: public …. , string? categoryID) { int.TryParse(categoryID, out categoryID); 得到“无法从’输出字符串’转换为’输出int’ 该怎么办? 编辑: 由于asp.net约束不再相关是解决问题的方法 / M

在C#中转换UTC日期/时间字符串

我需要将字符串”Fri Sep 11 00:00:00 GMT+04:00 2020″转换为DateTime对象11.09.2011 。 我用的时候 DateTime result; DateTime.TryParseExact(MyString, “ddd MMM dd HH:mm:ss ‘GMT’zzz yyyy”, CultureInfo.InvariantCulture, DateTimeStyles.None, out result); result等于{9/10/2020 11:00:00 PM} 。 如何修改代码,使日期组件为10.09.2011而不是 10.09.2011 (我只需要日期而不关心时间)?

Regex vs Tryparse性能最佳

在我的ASP.net项目中,我需要为用户输入validation一些基本数据类型。 数据类型类似于数字,小数,日期等。 在性能方面我应该采取的最佳方法是什么? 它是通过Regex.IsMatch()还是通过TryParse() ? 提前致谢。

Int.TryParse()始终返回false

我有以下代码 int varOut; int.TryParse(txt1.Text, out varOut); // Here txt1.Text = 4286656181793660 这里txt1.Text是JavaScript生成的随机16位数字,是一个整数。 但是上面的代码总是返回false,即varOut值总是为零。 我在这做错了什么?

Enum.TryParse with Flags属性

我已经通过值或其名称为TryParse枚举编写了代码,如下所示。 如何扩展此代码以包含使用Flags属性解析枚举? public static bool TryParse(this T enum_type, object value, out T result) where T : struct { return enum_type.TryParse(value, true, out result); } public static bool TryParse(this T enum_type, object value, bool ignoreCase, out T result) where T : struct { result = default(T); var is_converted = false; var is_valid_value_for_conversion = new Func[]{ (e, […]

使用DateTime.TryParse方法检查有效日期

我正在使用Datetime.TryParse方法来检查有效的日期时间。 输入日期字符串将是任何字符串数据。 但是返回false作为指定日期无效。 DateTime fromDateValue; if (DateTime.TryParse(“15/07/2012”, out fromDateValue)) { //do for valid date } else { //do for in-valid date } 编辑:我错过了。 我需要将有效日期和时间一起检查为“15/07/2012 12:00:00”。 欢迎任何建议……

文化不变的Decimal.TryParse()

我正在为十进制validation器编写一个自定义字符串,需要使用忽略文化的Decimal.TryParse(即不关心输入是否包含“。”或“,”作为小数点分隔符)。 这是建议的方法: public static bool TryParse( string s, NumberStyles style, IFormatProvider provider, out decimal result ) 我无法弄清楚要用什么作为第三个参数。 我见过的例子看起来像这样: culture = CultureInfo.CreateSpecificCulture(“en-GB”); Decimal.TryParse(value, style, culture, out number) 所以他们创造了一种特定的文化 CultureInfo没有“CreateInvariantCulture”方法,CultureInfo.InvariantCulture不是必需的类型。 什么是正确的用法?

在C#中,如何检查字符串是否包含整数?

我只想知道,String变量是否包含可解析的正整数值。 我现在不想解析这个值。 目前我在做: int parsedId; if ( (String.IsNullOrEmpty(myStringVariable) || (!uint.TryParse(myStringVariable, out parsedId)) ) {//..show error message} 这很难看 – 如何更简洁? 注意:我知道扩展方法,但我想知道是否有内置的东西。

如果为零,则字符串为double跳过最后一个小数?

这是我的问题。 我需要转换说“5.550”(字符串)加倍为5.550,这是双倍的3位十进制数字。 我在解析时尝试了IFormatProvider但没有使用。它一直跳过最后的零()。 请指教。 谢谢,Kumar MA