Member 13302374 Ответов: 1

C# - возвращает строковое представление заданной даты-времени в определенном формате


Привет,

Меня попросили об этом верните строковое представление заданной даты-времени в формате: понедельник, 30 июля 2013 г. 14: 18: 00 (AM/PM) Пожалуйста, смотрите мой код ниже. Я не далек от правильного ответа, но, должно быть, где-то ошибся в своем синтаксисе.

Исправления и любые сопутствующие разъяснения будут весьма признательны.

С уважением

Что я уже пробовал:

 {
        /****************************************************************
        
        Return the string representation of the given DateTime in the format: Monday, July 30, 2013 14:18:00 (AM/PM) .
        
        *****************************************************************/
        public static string GetFullDisplayDateTime(DateTime datetime)
        {

            return datetime.ToString("dddd","MMMM" "dd", "yyyy", "zzz" );


        }
    }
}

F-ES Sitecore

Серьезно? Просто посмотрите на документацию

https://msdn.microsoft.com/en-us/library/zdtaw1bw(v=против 110). aspx

Member 13302374

Спасибо за ссылку. Пожалуйста, имейте в виду, что я новичок и учусь, так что не все будет очевидно.

верните дату и время.ToString ("dddd, MMMM dd, yyyy HH:mm:ss");

Это мой обновленный код, который все еще приносит ошибку. Должно быть, это последняя часть, но я следил за документацией как можно лучше

jimmson

Вам нужно espace ':' в этой строке. Как это: @"чч\мм"

Member 13302374

верните дату и время.ToString ("dddd, MMMM dd, yyyy HH\: mm\: ss");

Вот так?

Кроме того, мне нужно, чтобы AM или PM автоматически записывались в конце. Я видел его на сайте, который был предоставлен выше, но не вижу кода для него

1 Ответов

Рейтинг:
1

TheRealSteveJudge

Почему бы вам не использовать стандартный формат?
напр.

var ci = new CultureInfo("en-US");
var dateTimeString = now.ToString("F", ci);

Не забудьте использовать правильный CultureInfo.

Другой:
var dateTimeString = now.ToString("dddd, MMMM dd yyyy HH:mm:ss tt", ci);


Member 13302374

Спасибо. Я попробую это сделать. Что касается моего кода

верните дату и время.ToString ("dddd, MMMM dd, yyyy HH:mm:ss");

знаете ли вы, что было бы поправкой, которую я упускаю? Мне нужно, чтобы он автоматически говорил, Будет ли это AM или PM после времени. Когда я запускаю этот код, окно ошибки сообщает мне, что время выходит как 00: 00: 00, так что где-то определенно что-то не так

TheRealSteveJudge

Просто попробуй. Он автоматически покажет AM или PM.
Стандартные форматы описаны с примерами
в комментарии F-ES Sitecore https://msdn.microsoft.com/en-us/library/zdtaw1bw(v=против 110). aspx

Member 13302374

ваш код не сработал, наверное, потому, что я нахожусь на определенной тренировочной программе, и они хотят только ожидаемых ответов. Я попробую ваш код, когда доберусь до своего компьютера. Что касается моего кода, то что это за небольшая поправка, которую я упускаю?

TheRealSteveJudge

Я обновил решение с помощью другого подхода.
Оба моих предложения проверены и работают.