我有这个字符串“Sun Oct 11 21:53:26 +0000 2015”,我想使用DateTime方法解析它,但它失败了,我该怎么办?
我尝试用空字符串(“”)替换“+0000”部分,但仍无效。
编辑:我得到的错误是“不是有效的DateTime值”
以下是一些代码:
string JSONStr = TwitterHelper.getInstance().GetReq_UserTimeline(tbScreenName.Text, 1);
JArray jarr = JsonConvert.DeserializeObject<JArray>(JSONStr);
string a = jarr[0]["created_at"].ToString().Replace("+0000", "");
currentTweetInfo.created_at = DateTime.Parse(a);
答案 0 :(得分:7)
对于您的特定字符串(假设时区偏移量始终为+0000
),格式字符串将为:
var s = "Sun Oct 11 21:53:26 +0000 2015";
var dt = DateTime.ParseExact(s,"ddd MMM dd HH:mm:ss +0000 yyyy",
CultureInfo.InvariantCulture);
答案 1 :(得分:0)
您可以使用ParseExact
:
string dateString, format;
DateTime result;
CultureInfo provider = CultureInfo.InvariantCulture;
// Parse date and time with custom specifier.
dateString = "Sun 15 Jun 2008 8:30 AM -06:00";
format = "ddd dd MMM yyyy h:mm tt zzz";
result = DateTime.ParseExact(dateString, format, provider);
有关详情,请访问:https://msdn.microsoft.com/en-us/library/w2sa9yss(v=vs.110).aspx