crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Вывод даты в определенном формате
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
trdm Дата 6.12.2009, 16:12
  Я как-то запарился с разными форматами и соорудил на 1С вот такой велосипед:
Раскрывающийся текст

//******************************************************************************
/// глДатаФормат(_дата,"№Нед (ДД.ММ.ГГГГ)")
Функция глДатаФормат( нДата, нФормат)  Экспорт
    
    ЗначВозврата = ""+нФормат;
    Если ПустоеЗначение(нДата) = 1 Тогда
        Возврат "<..>";
    КонецЕсли;
    тМесяцСтр = Формат(нДата,"Д ДДММММГГГГ");
    тМесяцСтр = глСправаОт(тМесяцСтр," ");
    тМесяцСтр = глСлеваОт(тМесяцСтр," ");
    /// заменим и время...
    вЧЧ = 0;    вММ = 0;    вСС = 0;
    вТекВремяСтр = ТекущееВремя(вЧЧ,вММ,вСС);
    вЧЧ = Лев(вТекВремяСтр,2);
    вММ = Сред(вТекВремяСтр,4,2);
    вСС = Прав(вТекВремяСтр,2);
    
    вНомНедели = НомерНеделиГода(нДата);

    
    СписЗамен = СоздатьОбъект("СписокЗначений");

    Если Найти(ЗначВозврата,"ГГГГ")>0     Тогда СписЗамен.ДобавитьЗначение("ГГГГ",""+ДатаГод(нДата)); КонецЕсли;
    Если Найти(ЗначВозврата,"ГГ")>0     Тогда СписЗамен.ДобавитьЗначение("ГГ",    Прав(""+ДатаГод(нДата),2)); КонецЕсли;
    Если Найти(ЗначВозврата,"ММММ")>0     Тогда СписЗамен.ДобавитьЗначение("ММММ",тМесяцСтр); КонецЕсли;
    Если Найти(ЗначВозврата,"ММ")>0     Тогда СписЗамен.ДобавитьЗначение("ММ",    Формат(ДатаМесяц(нДата),"Ч(0)2")); КонецЕсли;
    Если Найти(ЗначВозврата,"мМ")>0     Тогда СписЗамен.ДобавитьЗначение("мМ",    ""+ДатаМесяц(нДата)); КонецЕсли;
    Если Найти(ЗначВозврата,"ДД")>0     Тогда СписЗамен.ДобавитьЗначение("ДД",    Формат(ДатаЧисло(нДата),"Ч(0)2")); КонецЕсли;
    Если Найти(ЗначВозврата,"ДД")>0     Тогда СписЗамен.ДобавитьЗначение("ДД",    ""+ДатаЧисло(нДата)); КонецЕсли;
    Если Найти(ЗначВозврата,"НН")>0     Тогда СписЗамен.ДобавитьЗначение("НН",    Формат(НомерНеделиГода(нДата),"Ч(0)2")); КонецЕсли;
    Если Найти(ЗначВозврата,"нН")>0     Тогда СписЗамен.ДобавитьЗначение("нН",    ""+НомерНеделиГода(нДата)); КонецЕсли;
    Если Найти(ЗначВозврата,"КК")>0     Тогда СписЗамен.ДобавитьЗначение("КК",    ""+глНомерКварталаДаты(нДата)); КонецЕсли;
    
    Если Найти(ЗначВозврата,"ЧЧ")>0     Тогда СписЗамен.ДобавитьЗначение("ЧЧ",    вЧЧ); КонецЕсли;
    Если Найти(ЗначВозврата,"WW")>0     Тогда СписЗамен.ДобавитьЗначение("WW",    вММ); КонецЕсли; /// минуты уже есть, чуток меревернем ММ>>WW
    Если Найти(ЗначВозврата,"СС")>0     Тогда СписЗамен.ДобавитьЗначение("СС",    вСС); КонецЕсли;
    Если Найти(ЗначВозврата,"№Нед")>0     Тогда СписЗамен.ДобавитьЗначение("№Нед",    вНомНедели); КонецЕсли;
    
    СЦ = 0;
    Для СЦ = 1 По СписЗамен.РазмерСписка() Цикл
        тПатернЗамн = "";
        тПатернЗнач = СписЗамен.ПолучитьЗначение(СЦ,тПатернЗамн);
        ЗначВозврата = СтрЗаменить(ЗначВозврата,тПатернЗнач,тПатернЗамн);
    КонецЦикла;
    Возврат ЗначВозврата;
КонецФункции // лДатаФормат()

niXman Дата 6.12.2009, 13:06
  опоздал :(
SABROG Дата 6.12.2009, 13:05
 
QString mydate(date.toString(Qt::ISODate));
BRE Дата 6.12.2009, 13:02
 
Цитата(++Norton++ @ 6.12.2009, 12:59) *
Если это возможно, подскажите как?

QString QDateTime::toString ( const QString & format ) const
++Norton++ Дата 6.12.2009, 12:59
  Возможно покажется совсем тупой вопрос, но все же... Я вот покапался, поискал и нигде не нашел. В стандартном виде дату и время вывести не проблема, но можно ли как-нибудь вывести в таком формате:
2009-12-03T21:58:20
Если это возможно, подскажите как?
Заранее спасибо!
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 19:14