c#如何在控制台中打印字符串数组

本文关键字:打印 字符串 数组 控制台 | 更新日期: 2023-09-27 18:24:17

粗体文本是我需要更改的地方,但不确定是什么。我希望控制台将月份显示为字符串,例如"Jul"Aug"。。。基本上,我对案例1的编码显示=2001年1月1日和情况3我希望它显示=1/2001年1月

static void Main(string[] args)
{
    do
    {
        Console.WriteLine("Please select a date format by entering either the 1, 2 or 3 Key");
        Console.WriteLine(" 1 = dd/mm/yyyy ");
        Console.WriteLine(" 2 = mm/dd/yyyy ");
        Console.WriteLine(" 3 = dd/mmm/yyyy ");
    } while (!int.TryParse(Console.ReadLine(), out f) || f < 0 || f>3);
    switch(f)
    {
        case 1:
            getDate1();
            Console.WriteLine("The day after {0}/{1}/{2} is {3}", d, m, y, md.NextDay1());
            break;
        case 2:
            getAmericanDate();
            Console.WriteLine("The day after {1}/{0}/{2} is {3}", d, m, y, md.NextDay1());
            break;
        **case 3:
            getAbbreviatedMonth();
            Console.WriteLine("The day after {1}/{4}/{2} is {3}", d, m, y, md.NextDay1());
            break;**
    }

static void getAbbreviatedMonth() //dd/mmm/yyyy
{
    do
    {
        Console.Write("PLease enter the year (not earlier than 1812) as 4 digits  >> ");
    } while (!int.TryParse(Console.ReadLine(), out y) || y < 1812);

    do
    {
        Console.Write("Please enter the month as a three letter character ( e.g 'Jul')   >> ");
    } while (isCorrectMonth(Console.ReadLine()));

    do
    {
        Console.Write("Please enter the day as a whole between 1 & {0} >> ", DayInMonth(m, y));
    } while (!int.TryParse(Console.ReadLine(), out d) || d > DayInMonth(m, y) || d < 1);

    md = new myDate(d, m, y);
}

static bool isCorrectMonth(string monthToCheck)
{
    string stringToCheck = monthToCheck.ToLower();
    string[] stringArray = { "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec" };
    foreach (string x in stringArray)
    {
        if (x.Contains(stringToCheck))
        {
            // Process..
            return true;
        }
        else
        {
            return false;
        }
    }
    return false;
}

c#如何在控制台中打印字符串数组

Console.WriteLine("The day after {1}/{4}/{2} is {3}", d, m, y, md.NextDay1())

你在这里的论点应该是0-3,而不是1-4。

您可能会发现将输入解析为DateTime更容易,然后可以轻松地以各种格式输出DateTime,并且只需调用.AddDays(1).

就可以找到第二天

请参阅此示例以格式化日期:

DateTime time = DateTime.Now;             // Use current time.
string format = "MMM ddd d HH:mm yyyy";   // Use this format.
Console.WriteLine(time.ToString(format)); // Write to console.

输出为:

Feb Fri 27 11:41 2009

来源是http://www.dotnetperls.com/datetime-format