Hi Arnaldo

If you look at the source of FormatDateTime M is replaced by N if the
preceding formatting character is H. I'm not quite sure if this works
correctly, it won't hurt to change it to "nn" anyway.


All:
I checked FormatDateTime routines and they are all the same (regarding
speed).

So a call like
    Result := DateToStr (t, RFC822_FormatSettings) + ' '
            + Time(t,RFC822_FormatSettings) + ' '
            + TimeZoneBias

with the following constant

   RFC822_FormatSettings : TFormatSettings = (
     CurrencyFormat:            3;
     NegCurrFormat:             8;
     ThousandSeparator:         ',';
     DecimalSeparator:          '.';
     CurrencyDecimals:          2;
     DateSeparator:             '.';
     TimeSeparator:             ':';
     ListSeparator:             ';';
     CurrencyString:            '€';
     ShortDateFormat:           'dd.MM.yyyy';
     LongDateFormat:            'ddd, d mmm yyyy hh:nn:ss';
     TimeAMString:              '';
     TimePMString:              '';
     ShortTimeFormat:           'hh:nn:ss';
     LongTimeFormat:            'hh:nn:ss';
     ShortMonthNames:           ('Jan', 'Feb', 'Mar', 'Apr', 'May', 
'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
     LongMonthNames:            ('January', 'February', 'March', 
'April', 'May', 'June', 'July', 'Augut', 'September', 'October', 
'November', 'December');
     ShortDayNames:             ('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 
'Fri', 'Sat');
     LongDayNames:              ('Sunday', 'Monday', 'Tuesday', 
'Wednesday', 'Thursday', 'Friday', 'Saturday');
     TwoDigitYearCenturyWindow: 0;);

would be easier to read.
Moreover according to Delphi Help it would be thread save in opposition
to a call without a TFormatSettings parameter.

        Veit

Arnaldo Braun wrote:
> Hi
> 
> A small typo in
> 
> hh:mm:ss
> 
> must be corrected to
> 
> hh:nn:ss or hh":"nn":"ss
> 
> MM is month and NN is minute
> 
> 
> 
> 
> Veit Zimmermann wrote:
> 
>> Marcello Vezzelli wrote:
>>  
>>
>>> Hi all,
>>> there is a bug in SmtpProt.pas (latest ics version just downloaded),
>>> function Rfc822DateTime, line 2892 and 2907, FormatDateTime function.
>>>
>>>        Result := FormatDateTime('ddd, d mmm yyyy hh:mm:ss', t) +
>>>                  ' ' + TimeZoneBias
>>>
>>> The time separator : should be put between double quotes, like this:
>>>
>>>        Result := FormatDateTime('ddd, d mmm yyyy hh":"mm":"ss', t) +
>>>                  ' ' + TimeZoneBias
>>>
>>> Otherwise the system default time separator would be used (in italian
>>> localization, default time separator is '.').
>>>
>>> Regards
>>>    
>>>
>> I know this comes a little bit late, but...
>>
>> In the same function it is tested for English/US format by only
>> comparing the first day (Sunday). Does anyone know if there is
>> any other language where the Sunday is also abbreviated as "sun"
>> but other days or months differ?
>>
>>     if ShortDayNames[1] = MyShortDayNames[1] then
>>         Result := FormatDateTime('ddd, d mmm yyyy hh":"mm":"ss', t) +
>>                   ' ' + TimeZoneBias
>>
>> Francois, why do you test at all and don't use TFormatSettings
>> for all those functions? Is it performance? I don't know if the
>> overloaded FormatDateTime function with TFormatStettings is slower.
>> At least it makes the code much more readable and shorter (despite
>> the definition of the TFormatSettings as a constant).
>>
>>      Veit
>>  
>>
> 


-- 
*********************************************************************
* Dipl.-Ing. Veit Zimmermann     [EMAIL PROTECTED] *
* VECTRONIC Aerospace GmbH              www.vectronic-aerospace.com *
* Carl-Scheele-Str. 12                     tel: +49 (0)30 6789 4990 *
* D-12489 Berlin                           fax: +49 (0)30 6789 5230 *
* Germany                              WGS84: 52°25.83'N 13°31.52'E *
*********************************************************************
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to