<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Format(xx) -&amp;gt; Integer im AnsiString formatieren]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>möchte aus 3 Zahlen (Stunden, Minuten, Sekunden) das Format hh<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f1f2-1f1f2.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--myanmar_burma_"
      title=":mm:"
      alt="🇲🇲"
    />ss erhalten.<br />
Dazu verwende ich im BCB6 (Time1 und Time2 sind unterschiedliche TDateTime Vars):</p>
<pre><code class="language-cpp">Integer i2,i3,i4; AnsiString z1; 

 i2=HoursBetween(Time2, Time1);                                                 // Differenz Stunden
 i3=MinutesBetween(Time2, Time1);                                               // Differenz Minuten
 i4=SecondsBetween(Time2, Time1);                                               // Differenz Sekunden
 z1=Format(&quot;%2d:%2d:%2d&quot;,ARRAYOFCONST((i2,i3,i4)));                             // Ausgabe hh:mm:ss
</code></pre>
<p>Heraus kommt aber z.B.: 12: 1: 9 statt 12:01:09<br />
In der Hilfe des BCB steht aber, wenn eine Längenbezeichnung (hier %2d) angegeben ist, dann wird linksbündig mit Nullen aufgefüllt. Ist die Funktion<br />
fehlerhaft oder mache ich einen Denkfehler (sprich was falsch)?</p>
<p>MfG Stefan Scholz</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143333/format-xx-gt-integer-im-ansistring-formatieren</link><generator>RSS for Node</generator><lastBuildDate>Tue, 04 Aug 2026 20:42:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143333.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 07 Apr 2006 11:15:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:15:44 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>möchte aus 3 Zahlen (Stunden, Minuten, Sekunden) das Format hh<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f1f2-1f1f2.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--myanmar_burma_"
      title=":mm:"
      alt="🇲🇲"
    />ss erhalten.<br />
Dazu verwende ich im BCB6 (Time1 und Time2 sind unterschiedliche TDateTime Vars):</p>
<pre><code class="language-cpp">Integer i2,i3,i4; AnsiString z1; 

 i2=HoursBetween(Time2, Time1);                                                 // Differenz Stunden
 i3=MinutesBetween(Time2, Time1);                                               // Differenz Minuten
 i4=SecondsBetween(Time2, Time1);                                               // Differenz Sekunden
 z1=Format(&quot;%2d:%2d:%2d&quot;,ARRAYOFCONST((i2,i3,i4)));                             // Ausgabe hh:mm:ss
</code></pre>
<p>Heraus kommt aber z.B.: 12: 1: 9 statt 12:01:09<br />
In der Hilfe des BCB steht aber, wenn eine Längenbezeichnung (hier %2d) angegeben ist, dann wird linksbündig mit Nullen aufgefüllt. Ist die Funktion<br />
fehlerhaft oder mache ich einen Denkfehler (sprich was falsch)?</p>
<p>MfG Stefan Scholz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032542</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032542</guid><dc:creator><![CDATA[Stefan71242]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:15:44 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:20:37 GMT]]></title><description><![CDATA[<p>Ich kenne diese Formatierungen nur von <a href="http://man.cx/printf(3)" rel="nofollow">man: printf(3)</a> - und da wird defaultmäßig mit Leerzeichen aufgefüllt. Versuch's doch mal mit dem Formatstring &quot;%02d&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032545</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:20:37 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:24:58 GMT]]></title><description><![CDATA[<p>...geht leider nicht. Keine führende Null.</p>
<p>Danke aber für den schnellen Tip!</p>
<p>Gruss Stefan</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032548</guid><dc:creator><![CDATA[Stefan71242]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:24:58 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:29:53 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>offenbar gibt es da bei der VCL-Funktion Format einen Fehler, das auffüllen mit der 0 wird nicht unterstützt. Bei sprintf gehts :</p>
<pre><code class="language-cpp">#include &lt;stdio.h&gt;

Integer i2 = 4,i3 = 6,i4 = 5;
char text[20];
sprintf(text, &quot;%02d:%02d:%02d&quot;, i2,i3,i4);
Label1-&gt;Caption =Format(&quot;%02d:%02d:%02d&quot;,ARRAYOFCONST((i2,i3,i4))) + &quot; &quot; + text;
</code></pre>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032556</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:29:53 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:41:24 GMT]]></title><description><![CDATA[<p>Hallo, Akari</p>
<p>so geht es in der Tat:</p>
<pre><code class="language-cpp">char c1[20];
 i2=HoursBetween(Time2, Time1);                                                 // Differenz Stunden
 i3=MinutesBetween(Time2, Time1);                                               // Differenz Minuten
 i4=SecondsBetween(Time2, Time1);                                               // Differenz Sekunden
 sprintf(c1, &quot;%02d:%02d:%02d&quot;, i2,i3,i4);
</code></pre>
<p>Vielen Dank, da kann man manchmal wirklich lange suchen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /><br />
Gruss, Stefan Scholz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1032568</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032568</guid><dc:creator><![CDATA[Stefan71242]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:41:24 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:42:15 GMT]]></title><description><![CDATA[<p>Es geht schon. Man muß die Hilfe nur gründlich lesen.</p>
<blockquote>
<p>If the format string contains a precision specifier, it indicates that the resulting string must contain at least the specified number of digits; if the value has less digits, the resulting string is left-padded with zeros.</p>
</blockquote>
<p>Das bedeutet, dass der Precision-Specifier (und width) angegeben werden muß. Also so</p>
<pre><code class="language-cpp">z1=Format(&quot;%2.2d:%2.2d:%2.2d&quot;,ARRAYOFCONST((i2,i3,i4)));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1032569</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032569</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:42:15 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 11:48:12 GMT]]></title><description><![CDATA[<p>Noch was.<br />
Auch AnsiString hat eine Memberfunktion namens sprintf. So kann man akaris Beispiel etwas vereinfachen</p>
<pre><code class="language-cpp">Integer i2 = 4,i3 = 6,i4 = 5;
Label1-&gt;Caption =text.sprintf(&quot;%02d:%02d:%02d&quot;, i2,i3,i4);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1032575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032575</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 07 Apr 2006 11:48:12 GMT</pubDate></item><item><title><![CDATA[Reply to Format(xx) -&amp;gt; Integer im AnsiString formatieren on Fri, 07 Apr 2006 20:58:30 GMT]]></title><description><![CDATA[<p>Werden die HoursBetween etc. noch an anderer Stelle als Einzelwerte benötigt? Das Geraffel kann man sich sonst bzw. überhaupt auch sparen:</p>
<pre><code class="language-cpp">z1 = FormatDateTime(&quot;hh:mm:ss&quot;, Time2 - Time1);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1032971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1032971</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Fri, 07 Apr 2006 20:58:30 GMT</pubDate></item></channel></rss>