在c#中将字符串转换为日期(dd/MM/yyyyy)格式

发布于 2024-09-16 16:44:59 字数 495 浏览 8 评论 0原文

我有一个格式为 MM/DD/YYYY 的查询字符串,

我在 C# 中使用它,就像

DateTime d = Request.QueryString["dateTime"].toString();

它给了我很多错误,指出日期时间格式无法识别。如果我手动将浏览器地址栏(查询字符串)中的日期时间更改为 dd/mm/yyyy 那么程序就可以正常工作。

我无法更改查询字符串,c# 中有没有办法从浏览器获取它,然后转换为像 dd/mm/yyyy 这样的日期?

编辑: 查询字符串:

http://localhost:49543/HM/Admin/ViewDetails.aspx?OrderNo=10&DateCreated=08/30/2010

因此您可以看到创建日期部分采用 MM/DD/YYYY 格式。 我无法从 c# 中获取它。如果我手动将其更改为 30/08/2010,它就可以工作

i have a query string with format MM/DD/YYYY

I am using it in c# like

DateTime d = Request.QueryString["dateTime"].toString();

its giving me a lot of error saying the date time format is not recognized. If i manually change the datetime in browser address bar (query string) to dd/mm/yyyy then the program just works fine.

I cannot change the query string, is there a way in c# to get it from browser and then convert into date like dd/mm/yyyy please?

edit:
the query string:

http://localhost:49543/HM/Admin/ViewDetails.aspx?OrderNo=10&DateCreated=08/30/2010

so you can see the datecreated part is in MM/DD/YYYY format.
I am not able to grab it from c#. If I manually change that to 30/08/2010, it works

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

战皆罪 2024-09-23 16:44:59
DateTime d = DateTime.ParseExact(Request.QueryString["dateTime"], "dd/MM/yyyy", CultureInfo.InvariantCulture);
DateTime d = DateTime.ParseExact(Request.QueryString["dateTime"], "dd/MM/yyyy", CultureInfo.InvariantCulture);
初心 2024-09-23 16:44:59

如何将请求中的字符串转换为DateTime

DateTime d = DateTime.ParseExact(Request.QueryString["dateTime"], "dd/MM/yyyy", null);

How to turn string from request into DateTime:

DateTime d = DateTime.ParseExact(Request.QueryString["dateTime"], "dd/MM/yyyy", null);
梦萦几度 2024-09-23 16:44:59

DateTime.ParseExact 是您寻求的解决方案。
但我建议您使用以下函数验证查询字符串数据:

bool isValidDate(string dtStr) {
    string pattern = @"^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$)";
    System.Text.RegularExpressions.Regex re = new System.Text.RegularExpressions.Regex(pattern);
    return re.IsMatch(dtStr);
}

编辑 1:除了 ParseExact 之外,您还可以使用以下内容:

DateTime.Parse(dateString, new System.Globalization.CultureInfo("tr-TR"))

土耳其日期时间格式为 dd/MM/YYYY。

DateTime.ParseExact is the solution you seek for.
But I recommend you to validate the querystring data with a function as follows:

bool isValidDate(string dtStr) {
    string pattern = @"^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$)";
    System.Text.RegularExpressions.Regex re = new System.Text.RegularExpressions.Regex(pattern);
    return re.IsMatch(dtStr);
}

EDIT 1: Besides ParseExact, you can use the following:

DateTime.Parse(dateString, new System.Globalization.CultureInfo("tr-TR"))

Turkish datetime format is dd/MM/YYYY.

玩套路吗 2024-09-23 16:44:59
// Parsing:
DateTime d = DateTime.Parse(Request.QueryString["dateTime"].toString());

// Conversion:
string dString = d.ToWhateverFormatYouWant();

以下是有关格式化日期的一些信息:

http://msdn .microsoft.com/en-us/library/az4se3k1(VS.71).aspx

// Parsing:
DateTime d = DateTime.Parse(Request.QueryString["dateTime"].toString());

// Conversion:
string dString = d.ToWhateverFormatYouWant();

And here's some info on formatting dates:

http://msdn.microsoft.com/en-us/library/az4se3k1(VS.71).aspx

坏尐絯℡ 2024-09-23 16:44:59

DateTime.TryParse 可能是一个不错的选择。

DateTime.TryParse could be a great option..

迟月 2024-09-23 16:44:59

试试这个它应该可以工作

    DateTime d = 
           DateTime.ParseExact(Request.QueryString["dateTime"], 
           "dd'/'MM'/'yyyy",    
           CultureInfo.InvariantCulture);

我遇到类似的事情: DateTime Format in C#

Try this it should work

    DateTime d = 
           DateTime.ParseExact(Request.QueryString["dateTime"], 
           "dd'/'MM'/'yyyy",    
           CultureInfo.InvariantCulture);

I faced something similar: DateTime Format in C#

凤舞天涯 2024-09-23 16:44:59

您可以使用:DateTime.Now.ToString("dd/MM/yyyy");

You can use: DateTime.Now.ToString("dd/MM/yyyy");

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文