繁体   English   中英

以正确的格式将字符串解析为DateTime

[英]Parse string in the right Format to DateTime

我有问题,我无法以正确的格式将字符串解析为DateTime。 我尝试了许多不同的方法,并在多个网站上进行了搜索,但没有找到解决问题的方法

string vonDatum = dtpVon.Value.ToString("dd.MM.yyyy");
        DateTime startDatum = DateTime.ParseExact(vonDatum, "dd.MM.yyyy", null);
        String bisDatum = dptBis.Value.ToString("dd.MM.yyyy");
        DateTime endDatum = DateTime.ParseExact(bisDatum, "dd.MM.yyyy", null);

如您所见,我想解析为dd.MM.yyyy。 但是我收到类似dd.MM.yyyy.ss.fff的信息(不确定ss.fff,但是我还得到了秒数和毫秒数)。

非常感谢有人能帮助我

将datetime解析为特定的字符串格式或将其转换为特定的区域性通常会引发异常。 您可以使用以下代码获取此格式dd.MM.yyyy

DateTime dateString = DateTime.Now;

string day = dateString.Day.ToString();
string month = dateString.Month.ToString();
string year = dateString.Year.ToString();

string date = day + "." + month + "." + year;
Console.WriteLine(date);

输出:10.2.2017

我只是自己发现的。 如果有人遇到相同的问题,请按以下步骤处理。

 string datum = String.Format("{0:dd/MM/yyyy}", date);

例如,我在这种情况下使用它。

string vonDatum = dtpVon.Value.ToString("dd.MM.yyyy");
        DateTime startDatum = DateTime.ParseExact(vonDatum, "dd.MM.yyyy", null);

        string bisDatum = dptBis.Value.ToString("dd.MM.yyyy");
        DateTime endDatum = DateTime.ParseExact(bisDatum, "dd.MM.yyyy", null);

 for (DateTime date = startDatum; date <= endDatum; date = date.AddDays(1))
            {
                string datum = String.Format("{0:dd/MM/yyyy}", date);
                // Erste tabellenbefüllung erstellen 
                sqlite_cmd.CommandText = "INSERT INTO einteilung (mitarbeiter, arbeitsschicht, datum) VALUES ('"+mitarbeiter+"', '"+arbeitsschicht+"', '"+datum +"');";
                sqlite_cmd.ExecuteNonQuery();
            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM