<?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[eingelesenen text formatieren]]></title><description><![CDATA[<p>Hallo nochmal:)</p>
<p>Vielleicht könnte mir jemand helfen, und zwar:</p>
<p>Hab einen Text aus einer Datei eingelesen und in eine zweite datei kopiert.<br />
Nun muss ich die Zeilenlänge auf 80 festlegen, auch kein problem.</p>
<p>aber es dürfen keine Wörter zerteilt werden. Weiters soll ein Zeilenumbruch erfolgen, wenn das zeichen '{' kommt. Und da bin ich mit meinem c++-latein am ende.</p>
<p>insert() funktioniert nicht, replace auch nicht. vielleicht hat jemand eine idee:) wäre echt super</p>
<p>ich stell meinen code von der formatierung rein, der vom einlesen des textes kann ich ja weglassen...</p>
<pre><code class="language-cpp">// Beginn Formatierung.
    unsigned char c;                 
    unsigned int count = 0;

    char cc;
    const int ZEILENLAENGE = 80;
    string buchstaben;

    buchstaben.insert('{',&quot;\n&quot;);

    while (file.get(cc)) 
    {
      c = cc;

      if(c &lt; ' ') 
      { 
         c = '.';
      }  

      buchstaben += c;
      ++count;
      count %= ZEILENLAENGE;
      if (count == 0) 
      {
         cout &lt;&lt; buchstaben &lt;&lt; &quot;   &quot; &lt;&lt; endl;
         buchstaben = &quot;&quot;;

      }
    }
    if (count != 0) 
    { 
      cout &lt;&lt; buchstaben;
      for(size_t i=0; i &lt; (ZEILENLAENGE-count); ++i)
         cout &lt;&lt; ' ';
      cout &lt;&lt; &quot;   &quot; &lt;&lt; endl;
    }
    cout &lt;&lt; endl;

    system(&quot;PAUSE&quot;);
    return 0;
}
</code></pre>
<p>danke für eure zeit<br />
v</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/280110/eingelesenen-text-formatieren</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 06:04:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/280110.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 09 Jan 2011 20:06:03 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to eingelesenen text formatieren on Sun, 09 Jan 2011 20:06:03 GMT]]></title><description><![CDATA[<p>Hallo nochmal:)</p>
<p>Vielleicht könnte mir jemand helfen, und zwar:</p>
<p>Hab einen Text aus einer Datei eingelesen und in eine zweite datei kopiert.<br />
Nun muss ich die Zeilenlänge auf 80 festlegen, auch kein problem.</p>
<p>aber es dürfen keine Wörter zerteilt werden. Weiters soll ein Zeilenumbruch erfolgen, wenn das zeichen '{' kommt. Und da bin ich mit meinem c++-latein am ende.</p>
<p>insert() funktioniert nicht, replace auch nicht. vielleicht hat jemand eine idee:) wäre echt super</p>
<p>ich stell meinen code von der formatierung rein, der vom einlesen des textes kann ich ja weglassen...</p>
<pre><code class="language-cpp">// Beginn Formatierung.
    unsigned char c;                 
    unsigned int count = 0;

    char cc;
    const int ZEILENLAENGE = 80;
    string buchstaben;

    buchstaben.insert('{',&quot;\n&quot;);

    while (file.get(cc)) 
    {
      c = cc;

      if(c &lt; ' ') 
      { 
         c = '.';
      }  

      buchstaben += c;
      ++count;
      count %= ZEILENLAENGE;
      if (count == 0) 
      {
         cout &lt;&lt; buchstaben &lt;&lt; &quot;   &quot; &lt;&lt; endl;
         buchstaben = &quot;&quot;;

      }
    }
    if (count != 0) 
    { 
      cout &lt;&lt; buchstaben;
      for(size_t i=0; i &lt; (ZEILENLAENGE-count); ++i)
         cout &lt;&lt; ' ';
      cout &lt;&lt; &quot;   &quot; &lt;&lt; endl;
    }
    cout &lt;&lt; endl;

    system(&quot;PAUSE&quot;);
    return 0;
}
</code></pre>
<p>danke für eure zeit<br />
v</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2004660</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2004660</guid><dc:creator><![CDATA[vankitz]]></dc:creator><pubDate>Sun, 09 Jan 2011 20:06:03 GMT</pubDate></item><item><title><![CDATA[Reply to eingelesenen text formatieren on Mon, 10 Jan 2011 08:10:13 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich bin mir ziemlich sicher, dass insert so nicht funktioniert. insert bekommt normalerweise einen Iterator(Zeiger) auf die Stelle, wo du einfügen willst, sonst würde es replace heißen. Schau aber einfach in der C++-Referenz nach, dort sind die Methoden beschrieben und manchmal gibt es auch ein Beispiel. Im Internet wird man aber sicherlich auch sonst sehr viel Material zum Umgang mit STL-Strings finden.<br />
Viel Erfolg!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2004777</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2004777</guid><dc:creator><![CDATA[Paul Müller]]></dc:creator><pubDate>Mon, 10 Jan 2011 08:10:13 GMT</pubDate></item><item><title><![CDATA[Reply to eingelesenen text formatieren on Mon, 10 Jan 2011 08:37:27 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Bei deinen Operationen musst du erstmal mit find o.ä. die Position zum Ersetzen herausfinden. Die kannst du dann replace übergeben.<br />
Wenn du keine Wöreter trennen willst musst du halt nach Leerzeichen suchen und da trennen.<br />
siehe<br />
<a href="http://www.cplusplus.com/reference/string/string/" rel="nofollow">http://www.cplusplus.com/reference/string/string/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2004786</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2004786</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 10 Jan 2011 08:37:27 GMT</pubDate></item></channel></rss>