<?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[(socket)string sendegerecht aufbereiten]]></title><description><![CDATA[<p>hallo</p>
<p>ich möchte einen string übers netzwerk senden. nun kann es jedoch sein, dass dieser string viel zu lang für den buffer von 1024 ist. jetzt möchte ich also den string teilen, und in den einzelnen fragmenten senden. leider stecke ich grad bei der teilungsfunktion fest.</p>
<p>ich möchte die strings in einem vector&lt;string&gt; unterbringen.</p>
<pre><code class="language-cpp">int SendData(int socket, string Buffer)
{
	int bytesSent = 0;
	if(Buffer.length() &gt; 1024) {
		//buffer to big, split it.
		vector&lt;string&gt; SendBuffer;
</code></pre>
<p>jetzt muss ich ja irgendwie den string teilen. das funktioniert ja mit substr().<br />
doch jetzt brauch ich mal hilfe für das verstehen der funktion.<br />
mit</p>
<pre><code class="language-cpp">SendBuffer.push_back(Buffer.substr(0, 1024));
</code></pre>
<p>kann ich genau einen string, den ich brauche einlesen, doch weiter? wie kann ich das verbinden, dass der ganze string in den vector kommt?<br />
ich habe keine idee für eine schleifenbedingung, außerdem für den fall, dass der letzte teil des strings eben nicht 1024 zeichen hat...</p>
<p>greetz</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/218482/socket-string-sendegerecht-aufbereiten</link><generator>RSS for Node</generator><lastBuildDate>Fri, 09 Oct 2026 01:41:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/218482.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 21 Jul 2008 13:34:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to (socket)string sendegerecht aufbereiten on Mon, 21 Jul 2008 13:34:33 GMT]]></title><description><![CDATA[<p>hallo</p>
<p>ich möchte einen string übers netzwerk senden. nun kann es jedoch sein, dass dieser string viel zu lang für den buffer von 1024 ist. jetzt möchte ich also den string teilen, und in den einzelnen fragmenten senden. leider stecke ich grad bei der teilungsfunktion fest.</p>
<p>ich möchte die strings in einem vector&lt;string&gt; unterbringen.</p>
<pre><code class="language-cpp">int SendData(int socket, string Buffer)
{
	int bytesSent = 0;
	if(Buffer.length() &gt; 1024) {
		//buffer to big, split it.
		vector&lt;string&gt; SendBuffer;
</code></pre>
<p>jetzt muss ich ja irgendwie den string teilen. das funktioniert ja mit substr().<br />
doch jetzt brauch ich mal hilfe für das verstehen der funktion.<br />
mit</p>
<pre><code class="language-cpp">SendBuffer.push_back(Buffer.substr(0, 1024));
</code></pre>
<p>kann ich genau einen string, den ich brauche einlesen, doch weiter? wie kann ich das verbinden, dass der ganze string in den vector kommt?<br />
ich habe keine idee für eine schleifenbedingung, außerdem für den fall, dass der letzte teil des strings eben nicht 1024 zeichen hat...</p>
<p>greetz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1550950</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1550950</guid><dc:creator><![CDATA[just-another-programmer]]></dc:creator><pubDate>Mon, 21 Jul 2008 13:34:33 GMT</pubDate></item><item><title><![CDATA[Reply to (socket)string sendegerecht aufbereiten on Mon, 21 Jul 2008 13:41:57 GMT]]></title><description><![CDATA[<p>Warum so kompliziert?<br />
Benutz doch einen Zeiger auf die Daten und schieb den Zeiger immer weiter.<br />
In etwa so (pseudocode, ungetestet)</p>
<pre><code>int SendData(int socket, string Buffer)
{
    char* b = Buffer.c_str();
    int len = Buffer.length();

    int sendedBytes = 0;
    while(sendedBytes &lt; len)
    {
      sendedBytes += send(socket,b); // Fehlerbehandlung fehlt hier
      b += sendedBytes;
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1550964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1550964</guid><dc:creator><![CDATA[ihoernchen]]></dc:creator><pubDate>Mon, 21 Jul 2008 13:41:57 GMT</pubDate></item><item><title><![CDATA[Reply to (socket)string sendegerecht aufbereiten on Mon, 21 Jul 2008 14:25:11 GMT]]></title><description><![CDATA[<p>und wie muss dann die empfängerseite aussehen?</p>
<p>ich dachte mir, dass ich zuerst die größe übermittele und dann den empfänger entsprechend anpasse, ist das gut so oder gibt es da auch ne einfachere lösung?^^</p>
<p>danke schonmal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1551009</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1551009</guid><dc:creator><![CDATA[just-another-programmer]]></dc:creator><pubDate>Mon, 21 Jul 2008 14:25:11 GMT</pubDate></item><item><title><![CDATA[Reply to (socket)string sendegerecht aufbereiten on Mon, 21 Jul 2008 15:00:44 GMT]]></title><description><![CDATA[<p>selbst gefunden <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p><a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-169861-and-postdays-is-0-and-postorder-is-asc-and-start-is-0.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-169861-and-postdays-is-0-and-postorder-is-asc-and-start-is-0.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1551025</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1551025</guid><dc:creator><![CDATA[just-another-programmer]]></dc:creator><pubDate>Mon, 21 Jul 2008 15:00:44 GMT</pubDate></item></channel></rss>