<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Díky.<br>
Takže nakonec je to jednoduchý.<br>
<br>
Zkusil jsem:<br>
std::string s1(40, '\0'), s2(40, '\0'), s3(40, '\0');<br>
std::strftime(&s1[0], s1.size(), "%Y.%m.%d %H:%M:%S",
std::localtime(&now));<br>
std::strftime(&s2[0], s2.size(), "%Y.%m.%D %H:%M:%S",
std::localtime(&now));<br>
std::strftime(&s3[0], s3.size(), "%Y.%m.%d %H:%m:%S",
std::localtime(&now));<br>
<br>
textBox3->Text = String::Format("s1:{0}, s2:{1}, s3:{2}",
gcnew String(s1.c_str()), gcnew String(s2.c_str()), gcnew
String(s3.c_str()));<br>
<br>
výsledek:<br>
<img src="cid:part1.iCNtB8i2.LiPOZqZ0@seznam.cz" alt="" width="551"
height="39"><br>
(obrázek byl v TB menší než ve zdrojovém okně, jak jsem ho zvětšil,
jsem zvědav jak dopadne po odeslání)<br>
<br>
Program do kterého jsem to chtěl, který slouží k testování ošetření
chyb v jednom zařízení, běží už od pátku a chyba stále nic:-) Tak
jsem to musel otestovat mimo. Prozměnu jsem netušil, že dostat
std::string do String^, co se hodí do textboxu, bude relativně
složitý.<br>
<br>
PH<br>
<br>
<br>
<div class="moz-cite-prefix">Dne 02.05.2023 v 8:08 Zbyněk Jaroš
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:Eyf.1TJH.3ME9547aeKm.1aKAZw@seznam.cz">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div>
<div>Zdravím,</div>
<div>Používám tohle.</div>
<div>...</div>
<div> //actual time</div>
<div> std::time_t now =
std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());</div>
<div> std::string s(30, '\0');</div>
<div> std::strftime(&s[0], s.size(), "%d-%m-%Y %H:%M:%S",
std::localtime(&now));</div>
<div><br>
</div>
<div><span style="background-color:transparent"> std::cout
<< "E:(" << s << "," <<
tidStr.c_str() << "," << __FUNCTION__ <<
"," << __LINE__ << ")User press Ctrl+C(SIGINT)
tid=" << std::hex <<tid<< std::endl;</span><br>
</div>
<div>...</div>
</div>
<div><br>
</div>
<div><span style="background-color:transparent">výstup z konzole</span><br>
</div>
<div>...</div>
<div>
<div>I(JqHxM,broadcastThread,331):tid=B5AAE1C0. Brodcast thread
is running</div>
<div>^CE:(02-05-2023 07:43:17,JGI1M,signal_handler,177)User
press Ctrl+C(SIGINT) tid=b6ab01c0</div>
<div>I(JORw4,main,798):tid=B72D6010. Main thread finished.</div>
<div>...</div>
</div>
<div><br>
</div>
<div>Z.</div>
<br>
<aside>---------- Původní e-mail ----------<br>
Od: Pavel Hudeček <a class="moz-txt-link-rfc2396E" href="mailto:edizon@seznam.cz"><edizon@seznam.cz></a><br>
Komu: <a class="moz-txt-link-abbreviated" href="mailto:hw-list@list.hw.cz">hw-list@list.hw.cz</a><br>
Datum: 29. 4. 2023 11:08:25<br>
Předmět: Re: C++ čas ve stringu</aside>
<br>
<blockquote data-email="edizon@seznam.cz">Díky.
<br>
strftime mi navrhnul i chatgpt. Zajímavé je, že ale nebyl
schopen <br>
vyrobit ukázku, kde by seděly všechny datové typy mezi now() a
strftime:-)
<br>
<br>
PH
<br>
<br>
Dne 28.04.2023 v 13:38 Jindroush napsal(a):
<br>
> <a class="moz-txt-link-freetext" href="https://en.cppreference.com/w/cpp/chrono/c/strftime">https://en.cppreference.com/w/cpp/chrono/c/strftime</a>
<br>
> nebo pak rucne coutovat prave pres jednotlive hodnoty v
calendar (od <br>
> C++20)
<br>
>
<br>
> On 28.04.2023 13:18, Pavel Hudeček wrote:
<br>
>> Dobrý den všem,
<br>
>> potřeboval bych v komandlajnovém C++ programu datum a
čas v std::string
<br>
>> Tohle funguje:
<br>
>> time_t tt = <br>
>>
std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
<br>
>> char chr[50];
<br>
>> ctime_s(chr, 50, &tt);
<br>
>> std::string s(chr);
<br>
>>
<br>
>> Ale:
<br>
>> 1. Připadá mi to moc složitý
<br>
>> 2. Na konci je enter a dost mi tam vadí
<br>
>> 3. Líbilo by se mi datum v číselném tvaru (pokud možno
d-m-r, nebo <br>
>> r-m-d) bez anglických měsíců a dnů v týdnu. Nebo, když
to musí být s <br>
>> názvama, tak česky lokalizované.
<br>
>>
<br>
>> Alternativa je, si to přes nějaké další std::chrono
věci rozsekat na <br>
>> čísla dní, měsíc;, let, hodin, ... ale to beru jako
nejsložitější, <br>
>> kdyby ostatní selhaly. </blockquote>
</blockquote>
</body>
</html>