簡體   English   中英

始終獲取字符串未被識別為有效的日期時間。 如何轉換為當前格式

[英]always getting string was not recognized as valid datetime. how to convert for current format

我想使用文本框接受dd-MM-yyyy格式的日期,我也使用了ajax日歷。

DateTime.ParseExact(txtDate.Text,"dd-MM-yyyy",null) 

Convert.ToDateTime(txtDate.Text) 

都拋出異常:

字符串未被識別為有效的日期時間。

我知道何時將當前為MM-dd-yyyy系統dateformat更改為dd-MM-yyyy ,它將開始識別它,但是當我將其發布到服務器上時,解決方案是什么。

那么,有什么解決方案可以將其解析為當前格式嗎?

您需要將IFormatProvider參數傳遞給ParseExact方法,例如:

CultureInfo provider = CultureInfo.GetCultureInfo("en-US")
DateTime.ParseExact(txtDate.Text,"dd-MM-yyyy",provider) 

並且不要忘記使用System.Globalization命名空間

您需要使用System.Threading.Thread.CurrentThread.CurrentCulture來獲取用戶的當前設置。 然后使用它來獲取格式化的日期字符串。

DateTime now = DateTime.Now;
string formattedToCurrentUser = now.ToString(System.Threading.Thread.CurrentThread.CurrentCulture);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM