首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

c# 印证年月时间格式

2012-11-04 
c#验证年月时间格式如:201210如何验证这样的年月组合,前面四位是年 ,后台两位是月。还有一种是 20121001 ,

c# 验证年月时间格式
如:201210 如何验证这样的年月组合,前面四位是年 ,后台两位是月。

 还有一种是 20121001 ,这种前面四位是年 ,中间两位是月,后两位是日 。


bool IsDate(str){

代码

}

各位牛人以及非牛人都看看

[解决办法]
What's your regulation?
Mod the number by 100 to get the last two digits. See if it is between 1 and 12.
Then divide the number by 100 to get the first several digits. It depends on your rule, any number could be a valid year number.
[解决办法]
DateTime.prase("20121001");
DateTime.prase("201210");
试试呗
[解决办法]

探讨
DateTime.prase("20121001");
DateTime.prase("201210");
试试呗

[解决办法]
C# code
    bool IsDate(string s)    {        DateTime dt;        return DateTime.TryParseExact(s, "yyyyMMdd", null, DateTimeStyles.None, out dt) || DateTime.TryParseExact(s, "yyyyMM", null, DateTimeStyles.None, out dt);    }
[解决办法]
B/s
C# code
    protected void Button1_Click(object sender, EventArgs e)    {        string s = "20120230";        if (IsDate(s))        {            Response.Write(s);        }    }    private bool IsDate(string str)    {        if (string.IsNullOrEmpty(str))            return false;        if ((str.Length != 6) && (str.Length != 8))            return false;        if (str.Length == 6)        {            str = str.Substring(0, 4) + "-" + str.Substring(4,2);        }        if (str.Length == 8)        {            str = str.Substring(0, 4) + "-" + str.Substring(4, 2) + "-" + str.Substring(6,2);        }        try        {            DateTime.Parse(str);            return true;        }        catch        {            return false;        }            }
[解决办法]
代碼簡潔,#6樓棒!
C# code
    protected void Button1_Click(object sender, EventArgs e)    {        string s = "2012-02";        if (IsDate(s))        {            Response.Write(s);        }    }    private bool IsDate(string s)    {        DateTime dt;        return DateTime.TryParseExact(s, "yyyyMMdd", null, System.Globalization.DateTimeStyles.None, out dt) || DateTime.TryParseExact(s, "yyyyMM", null, System.Globalization.DateTimeStyles.None, out dt);    } 

热点排行