<?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[Aus Socket lesen bis Zeilenende]]></title><description><![CDATA[<p>Hallo,</p>
<p>Gibt es einen eleganteren Weg, unter Windows aus einem Socket bis zum Zeilenende (oder sonst irgendeinem Delimiter) zu lesen, als entweder byteweise zu lesen oder irgendwo einen Zwischenspeicher zu verwalten, und die Daten, die man ueber das Zeilenende hinaus liest, dort bis zum naechsten Aufruf abzulegen? Ich stehe gerade irgendwie auf dem Schlauch und dachte mir, ich frage hier mal nach.</p>
<p>Der Hintergrund der Frage ist folgender: Ich bastele an einem Programm, das aus Performancegruenden auf mehrere Rechner verteilt werden muss. Ausserdem ist ein Teil in Java geschrieben, der Rest in C++. Zwischen den C++-Programmen hatte ich die Verbindung bislang so, dass ich fuer jede Nachricht zunaechst einen Header geschickt habe, mit der Information, wie viele Bytes die Nachricht hat, und dann die eigentliche Nachricht. Die Java-Programme kommunizieren bislang ueber PrintWriter/BufferedReader und ich frage mich, was der guenstigste Weg ist, beides zusammenzubringen. Entweder die Java-Programme so umzustellen, das sie direkt mit ByteInput/OutputStreams arbeiten, oder meine C++-Programme dazu zu bringen, vernuenftig mit den via Java verschickten Nachrichten umzugehen.</p>
<p>Ich bin mir fast sicher, dass ich die einzig vernuenftige Option uebersehen habe... Vielleicht kann mir ja jemand auf die Spruenge helfen! <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>Danke im Voraus,</p>
<p>Squirrel <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/topic/195135/aus-socket-lesen-bis-zeilenende</link><generator>RSS for Node</generator><lastBuildDate>Mon, 29 Jun 2026 23:53:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195135.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 14 Oct 2007 17:00:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aus Socket lesen bis Zeilenende on Sun, 14 Oct 2007 17:00:40 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Gibt es einen eleganteren Weg, unter Windows aus einem Socket bis zum Zeilenende (oder sonst irgendeinem Delimiter) zu lesen, als entweder byteweise zu lesen oder irgendwo einen Zwischenspeicher zu verwalten, und die Daten, die man ueber das Zeilenende hinaus liest, dort bis zum naechsten Aufruf abzulegen? Ich stehe gerade irgendwie auf dem Schlauch und dachte mir, ich frage hier mal nach.</p>
<p>Der Hintergrund der Frage ist folgender: Ich bastele an einem Programm, das aus Performancegruenden auf mehrere Rechner verteilt werden muss. Ausserdem ist ein Teil in Java geschrieben, der Rest in C++. Zwischen den C++-Programmen hatte ich die Verbindung bislang so, dass ich fuer jede Nachricht zunaechst einen Header geschickt habe, mit der Information, wie viele Bytes die Nachricht hat, und dann die eigentliche Nachricht. Die Java-Programme kommunizieren bislang ueber PrintWriter/BufferedReader und ich frage mich, was der guenstigste Weg ist, beides zusammenzubringen. Entweder die Java-Programme so umzustellen, das sie direkt mit ByteInput/OutputStreams arbeiten, oder meine C++-Programme dazu zu bringen, vernuenftig mit den via Java verschickten Nachrichten umzugehen.</p>
<p>Ich bin mir fast sicher, dass ich die einzig vernuenftige Option uebersehen habe... Vielleicht kann mir ja jemand auf die Spruenge helfen! <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>Danke im Voraus,</p>
<p>Squirrel <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/1385046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385046</guid><dc:creator><![CDATA[Squirrel]]></dc:creator><pubDate>Sun, 14 Oct 2007 17:00:40 GMT</pubDate></item><item><title><![CDATA[Reply to Aus Socket lesen bis Zeilenende on Mon, 15 Oct 2007 10:58:11 GMT]]></title><description><![CDATA[<p>wenn du keine binären daten versendest und weist das du vermeiden kannst das dein delimeter zufällig in den binären daten auftreten kann dann würde ich es damit machen, ansonsten würde ich an deiner stelle mal schauen was einfacher ist,</p>
<p>das java-verfahren für einzelne datentypen zu übernehmen oder den java programmen deine header beizubringen und den einen reinen bytestream zu verwenden</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385456</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385456</guid><dc:creator><![CDATA[Ceos]]></dc:creator><pubDate>Mon, 15 Oct 2007 10:58:11 GMT</pubDate></item><item><title><![CDATA[Reply to Aus Socket lesen bis Zeilenende on Sat, 20 Oct 2007 07:11:58 GMT]]></title><description><![CDATA[<p>Danke! <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="🙂"
    /> Ich habe mich letztendlich entschieden, auf der C++-Seite eine Klasse auf Basis von CSocket zu implementieren, die mit Java-BufferedReader und PrintWriter auf der Gegenseite kommunizieren kann, und zur Applikation hin Funktionen wie readLine bietet. Da ich eigentlich aus der Java-Ecke komme, werde ich die wahrscheinlich noch haeufiger gebrauchen koennen. <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="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1388814</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1388814</guid><dc:creator><![CDATA[Squirrel]]></dc:creator><pubDate>Sat, 20 Oct 2007 07:11:58 GMT</pubDate></item></channel></rss>