将此字符串转换为datetime对象

我知道可以将字符串转换为dateTime()对象,但据我所知,字符串需要采用特定forms,例如“20121029”。

我有一个看起来完全像这样的字符串:

2012-10-29T08:45:00.000

……向任何人推进正确的方向?

输出是典型的DateTime结构, DateTime.parse("2012-10-29T08:45:00.000") ,应该解决问题。

要了解有关日期和时间Fromat String的更多信息,请参阅此处

尝试使用:

 DateTime.ParseExact Method 

例如。

  string dateString = "2012-10-29T08:45:00.000"; CultureInfo provider = CultureInfo.InvariantCulture; string format = "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fff"; DateTime dt = DateTime.ParseExact(dateString, format, provider); 

要么

 DateTime.Parse Method 

DateTime.Parse(字符串)

使用T ,看起来像xml常用的ISO日期格式(8601); 因此, XmlConvert非常方便地公开了这个; 尝试:

 string s = "2012-10-29T08:45:00.000"; DateTime when = XmlConvert.ToDateTime(s); 

有一个日期时间标准格式列表: http : //msdn.microsoft.com/en-us/library/az4se3k1.aspx

您可以随时编写自定义格式: http : //msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

具体来说,您的格式似乎与“往返”格式匹配: http : //msdn.microsoft.com/en-us/library/az4se3k1.aspx#Roundtrip

 string strDt = "2012-10-29T08:45:00.000"; DateTime dt = DateTime.Parse (strDt); string strDate = dt.ToString ("yyyyMMdd"); 

只需使用DateTimeParse方法……

 var date = DateTime.Parse("2012-10-29T08:45:00.000"); 

下面的代码将为您完成所有工作。

 private static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss.SSS"; public static void main(String[] args) throws ParseException { SimpleDateFormat dateFormatter = new SimpleDateFormat(DATE_FORMAT); Date dateObj = dateFormatter.parse("2012-10-29T08:45:00.000"); System.out.println(dateObj); } 

使用它可能会有所帮助

使用系统; 使用System.Collections.Generic; 使用System.ComponentModel; 使用System.Data; 使用System.Drawing; 使用System.Text; 使用System.Windows.Forms;

namespace DateTimeConvert {public partial class Form1:Form {public Form1(){InitializeComponent(); }

  private void button1_Click(object sender, EventArgs e) { label1.Text= ConvDate_as_str(textBox1.Text); } public string ConvDate_as_str(string dateFormat) { try { char[] ch = dateFormat.ToCharArray(); string[] sps = dateFormat.Split(' '); string[] spd = sps[0].Split('.'); dateFormat = spd[0] + ":" + spd[1]+" "+sps[1]; DateTime dt = new DateTime(); dt = Convert.ToDateTime(dateFormat); return dt.Hour.ToString("00") + dt.Minute.ToString("00"); } catch (Exception ex) { return "Enter Correct Format like <5.12 pm>"; } } private void button2_Click(object sender, EventArgs e) { label2.Text = ConvDate_as_date(textBox2.Text); } public string ConvDate_as_date(string stringFormat) { try { string hour = stringFormat.Substring(0, 2); string min = stringFormat.Substring(2, 2); DateTime dt = new DateTime(); dt = Convert.ToDateTime(hour+":"+min); return String.Format("{0:t}", dt); ; } catch (Exception ex) { return "Please Enter Correct format like <0559>"; } } } }