【问题标题】:Convert DateTime Format 04-08-2021 00:00:00 to string '08/04/2021' in C# [closed]在 C# 中将 DateTime 格式 04-08-2021 00:00:00 转换为字符串 '08/04/2021' [关闭]
【发布时间】:2021-08-10 15:13:25
【问题描述】:

我需要将日期时间格式 04-08-2021 00:00:00 转换为字符串“08/04/2021”(MM/dd/YYYY) 格式,但是当我尝试此代码时出现以下错误

using System.IO;
using System;

class Program
{
    static void Main()
    {
        String[] Arr = new String[4];
        DateTime Date1=04-08-2021 00:00:00
        Arr[0]=Date1.ToString("MM/dd/yyyy");
        Console.WriteLine(Arr[0]);
    }
}

错误

Compilation failed: 1 error(s), 0 warnings
main.cs(10,35): error CS1525: Unexpected symbol `0'

【问题讨论】:

  • 你不能这样声明一个日期时间。您必须解析字符串并构造对象。
  • 04-08-2021 00:00:00 对于 C# 来说是未知的。您要么必须将其声明为字符串 "04-08-2021 00:00:00" 然后解析它,要么声明为 new DateTime(2021,8,4)

标签: c# datetime


【解决方案1】:

您不能将DateTime 声明为这样的文字。您必须将其解析为字符串:

DateTime Date1 = DateTime.Parse("04-08-2021 00:00:00");
Console.WriteLine(Date1.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture));

你必须使用CultureInfo.InvariantCulture 来确保斜线被渲染,否则你当前的日期分隔符可能会不同。例如,在德国没有这个我得到:08.04.2021。见the "/" custom format specifier 另一种确保它的方法是用刻度转义格式说明符:

Date1.ToString("MM'/'dd'/'yyyy")

【讨论】:

    猜你喜欢
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    相关资源
    最近更新 更多