C# 将overdueDate从日期时间转换为格式为dd/mm/yyyy 00:00:00的字符串
如何将值overdueDate从DateTime变量转换为格式为dd/mm/yyyy 00:00:00的字符串C# 将overdueDate从日期时间转换为格式为dd/mm/yyyy 00:00:00的字符串,c#,date,datetime,C#,Date,Datetime,如何将值overdueDate从DateTime变量转换为格式为dd/mm/yyyy 00:00:00的字符串 DateTime overdueDate; DateTime today = DateTime.Now; if (today.DayOfWeek == DayOfWeek.Monday) { overdueDate = today.AddDays(-12); } else if (today.DayOfWeek ==
DateTime overdueDate;
DateTime today = DateTime.Now;
if (today.DayOfWeek == DayOfWeek.Monday)
{
overdueDate = today.AddDays(-12);
}
else if (today.DayOfWeek == DayOfWeek.Tuesday)
{
overdueDate = today.AddDays(-13);
}
else if (today.DayOfWeek == DayOfWeek.Wednesday)
{
overdueDate = today.AddDays(-7);
}
else if (today.DayOfWeek == DayOfWeek.Thursday)
{
overdueDate = today.AddDays(-8);
}
else if (today.DayOfWeek == DayOfWeek.Friday)
{
overdueDate = today.AddDays(-9);
}
else if (today.DayOfWeek == DayOfWeek.Saturday)
{
overdueDate = today.AddDays(-10);
}
else if (today.DayOfWeek == DayOfWeek.Sunday)
{
overdueDate = today.AddDays(-11);
}
要提供更详细的信息,请参考现有的文档
这里需要注意的一点是,ToString
可以根据文档列出您可以设想的任何日期
要提供更详细的信息,请参考现有的文档
这里需要注意的一点是,
ToString
可以根据文档列出您可以构思的任何日期。因为您只需要date
部分时间设置为00:00:00
,您可以使用该属性并将其格式化为:
string str = overdueDate.Date.ToString("dd/MM/yyy HH:mm:ss");
见:
在声明时,您还没有初始化您的overdueDate
,尽管您正在您的条件中为它赋值,但编译器无法确定是否会给它赋值。因此会出现错误“使用未分配的局部变量”。就这样宣布吧:
DateTime overdueDate = default(DateTime);
由于您只需要时间设置为
00:00:00
的Date
部件,因此可以使用该属性并将其格式化为:
string str = overdueDate.Date.ToString("dd/MM/yyy HH:mm:ss");
见:
在声明时,您还没有初始化您的overdueDate
,尽管您正在您的条件中为它赋值,但编译器无法确定是否会给它赋值。因此会出现错误“使用未分配的局部变量”。就这样宣布吧:
DateTime overdueDate = default(DateTime);
我不是100%确定你想要实现什么,但我相信下面是一个更有效的方法
DateTime overdueDate = DateTime.Now.AddDays(-7);
while (overdueDate.DayOfWeek != DayOfWeek.Wednesday)
overdueDate = overdueDate.AddDays(-1);
我不是100%确定你想要实现什么,但我相信下面是一个更有效的方法
DateTime overdueDate = DateTime.Now.AddDays(-7);
while (overdueDate.DayOfWeek != DayOfWeek.Wednesday)
overdueDate = overdueDate.AddDays(-1);
您尚未初始化
overdueDate
,请执行DateTime overdueDate=default(DateTime)代码>在初始化时。这是到目前为止我的代码-。我已经按照你的建议做了,但我还是有错误message@methuselah,您没有像我在评论和回答中所说的那样定义过多的日期。只需将overdueDate
的声明替换为DateTime overdueDate=default(DateTime)
在第7行,我现在得到以下错误消息:名称“odDate”在当前上下文中不存在
和使用未分配的局部变量“odDate”
@methuselah,声明字符串odDate=string.Empty代码>或字符串odDate=null
您尚未初始化overdueDate
,请执行DateTime overdueDate=default(DateTime)代码>在初始化时。这是到目前为止我的代码-。我已经按照你的建议做了,但我还是有错误message@methuselah,您没有像我在评论和回答中所说的那样定义过多的日期。只需将overdueDate
的声明替换为DateTime overdueDate=default(DateTime)
在第7行,我现在得到以下错误消息:名称“odDate”在当前上下文中不存在
和使用未分配的局部变量“odDate”
@methuselah,声明字符串odDate=string.Empty代码>或字符串odDate=null
你不需要那么多的if
语句,你可以通过转换成int然后做一些基本的算术来得到DayOfWeek
的数值。你不需要那么多if
语句,你可以通过转换成int然后做一些基本的算术来得到DayOfWeek
的数值。