1

在我的应用程序中,我有一个程序可以在任何给定时间在电话上设置提醒。但是,我在正确格式化日期和时间时遇到问题。

我有两个字符串,一个是 dd/MM/yyyy 或 MM/dd/yyyy 格式的日期,另一个是 24 小时格式的日期。

如何将这两个字符串格式化为DateTime?我试过DateTime.Parse(date+time);了,但这不起作用。

这是完整的代码集:

public void setReminder(string fileTitle, string fileContent, string fileDate, string fileTime)
        {
            string dateAndTime = fileDate + fileTime;

            if (ScheduledActionService.Find(fileTitle) != null)
                ScheduledActionService.Remove(fileTitle);
            Reminder r = new Reminder(fileTitle)
            {
                Content = fileContent,
                BeginTime = DateTime.Parse(fileDate+fileTime),
                Title = fileTitle
            };
            ScheduledActionService.Add(r);
        }

谢谢,非常感谢您的帮助!

4

1 回答 1

1

使用DateTime.ParseExact( MSDN )。

string dateAndTime = fileDate + " " + fileTime;
string pattern = "dd/MM/yyyy HH:mm:ss";

Reminder r = new Reminder(fileTitle)
{
    Content = fileContent,
    BeginTime = DateTime.ParseExact(dateAndTime, pattern, CultureInfo.InvariantCulture),
    Title = fileTitle
};

确保该模式与您的日期和时间模式相匹配。为了分隔日期和时间,我添加了一个空格,就像我的模式中有一个空格一样。

有关说明符的完整列表:MSDN

于 2013-07-10T14:15:31.973 回答