C#将字符串转换为日期时间
如何将下面的字符串转换为C#中的C#将字符串转换为日期时间,c#,C#,如何将下面的字符串转换为C#中的DateTime 当我试着用 Convert.ToDateTime("Mon Apr 22 07:56:21 +0000 2013") 这是一个错误 字符串未被视为有效的日期时间 请尝试DateTime.ParseExact 例如: CultureInfo provider = CultureInfo.InvariantCulture; dateString = "Sun 15 Jun 2008 8:30 AM -06:00"; format = "ddd dd
DateTime
当我试着用
Convert.ToDateTime("Mon Apr 22 07:56:21 +0000 2013")
这是一个错误
字符串未被视为有效的日期时间
请尝试
DateTime.ParseExact
例如:
CultureInfo provider = CultureInfo.InvariantCulture;
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);
更多示例可在中找到。您必须指定输入字符串采用特定格式。请参考链接和此链接。使用
DateTime.ParseExact
如:
string str = "Mon Apr 22 07:56:21 +0000 2013";
DateTime dt = DateTime.ParseExact(str,
"ddd MMM d HH:mm:ss +0000 yyyy",
CultureInfo.InvariantCulture);
你基本上有两个选择。 和。像 您可以使用以下选项:
using System;
using System.Globalization;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
CultureInfo cult = CultureInfo.InvariantCulture;
string txt = "Mon Apr 22 07:56:21 +0000 2013";
string format = "ddd MMM dd hh:mm:ss zzz yyyy";
DateTime dt = DateTime.ParseExact(txt, format, cult);
}
}
}
如果您从+06:00的国家/地区运行程序,您将获得时间13:56:21,日期相同
DateTime parseexactdt = DateTime.ParseExact("Mon Apr 22 07:56:21 +0000 2013",
"ddd MMM d HH:mm:ss +0000 yyyy",
CultureInfo.InvariantCulture);
string input = "Mon Apr 22 07:56:21 +0000 2013";
string format = "ddd MMM dd HH:mm:ss +ffff yyyy";
DateTime dt;
if(DateTime.TryParseExact(input,format, CultureInfo.InvariantCulture,
DateTimeStyles.None,out dt))
{
// do something with dt
}
using System;
using System.Globalization;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
CultureInfo cult = CultureInfo.InvariantCulture;
string txt = "Mon Apr 22 07:56:21 +0000 2013";
string format = "ddd MMM dd hh:mm:ss zzz yyyy";
DateTime dt = DateTime.ParseExact(txt, format, cult);
}
}
}