将此字符串转换为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");
只需使用DateTime
的Parse
方法……
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>"; } } } }