<?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[Anfänger: Text Datei Modifizieren &#x2F; Lesen &#x2F; Schreiben]]></title><description><![CDATA[<p>Hallo liebes forum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>erstmal eines vorweg, c++ ist für mich total neu ich habe da so gut wie keine erfahrung:</p>
<p>ich möchte gerne ein kleines programm schreiben was ich mit parameter angabe starten kann und dieses programm je nach parameter eine zeile von der textdatei löscht bzw hinzufügt, hatte mir das so vorgestellt:</p>
<p>der inhalt der textdatei:<br />
global AdminList={<br />
{name=&quot;&quot;,cl_guid=&quot;1234abc&quot;,admin_level=6,admin_pw=&quot;&quot;,},<br />
{name=&quot;&quot;,cl_guid=&quot;1234abc&quot;,admin_level=6,admin_pw=&quot;&quot;,},<br />
{name=&quot;&quot;,cl_guid=&quot;1234abc&quot;,admin_level=6,admin_pw=&quot;&quot;,},<br />
};</p>
<p>zum hinzufügen<br />
./testprogramm add name 734575884957987 6 abcde</p>
<p>zum entfernen<br />
./testprogramm remove name 734575884957987 6 abcde</p>
<p>ich habe mich auch schon durch mehere tutorials und so weiter durchgelesen aber mir fehlt es noch ein wenig an der logic.<br />
stimmt es, dass ich zuerst die datei kommplett einlesen dann den string modifiziere und dann die datei zurückschreibe muss ? oder gibt es ein möglichkeit die datei ohne einlesen / zurückschreiben , direkt ändern kann ?<br />
und welche funktionen / befehle brauche ich alle um das obige programm zuerstellen ?</p>
<p>vielen dank an alle<br />
gruss ren22</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/281698/anfänger-text-datei-modifizieren-lesen-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Sun, 23 Aug 2026 12:19:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/281698.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 06 Feb 2011 12:00:10 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Anfänger: Text Datei Modifizieren &#x2F; Lesen &#x2F; Schreiben on Sun, 06 Feb 2011 12:00:10 GMT]]></title><description><![CDATA[<p>Hallo liebes forum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>erstmal eines vorweg, c++ ist für mich total neu ich habe da so gut wie keine erfahrung:</p>
<p>ich möchte gerne ein kleines programm schreiben was ich mit parameter angabe starten kann und dieses programm je nach parameter eine zeile von der textdatei löscht bzw hinzufügt, hatte mir das so vorgestellt:</p>
<p>der inhalt der textdatei:<br />
global AdminList={<br />
{name=&quot;&quot;,cl_guid=&quot;1234abc&quot;,admin_level=6,admin_pw=&quot;&quot;,},<br />
{name=&quot;&quot;,cl_guid=&quot;1234abc&quot;,admin_level=6,admin_pw=&quot;&quot;,},<br />
{name=&quot;&quot;,cl_guid=&quot;1234abc&quot;,admin_level=6,admin_pw=&quot;&quot;,},<br />
};</p>
<p>zum hinzufügen<br />
./testprogramm add name 734575884957987 6 abcde</p>
<p>zum entfernen<br />
./testprogramm remove name 734575884957987 6 abcde</p>
<p>ich habe mich auch schon durch mehere tutorials und so weiter durchgelesen aber mir fehlt es noch ein wenig an der logic.<br />
stimmt es, dass ich zuerst die datei kommplett einlesen dann den string modifiziere und dann die datei zurückschreibe muss ? oder gibt es ein möglichkeit die datei ohne einlesen / zurückschreiben , direkt ändern kann ?<br />
und welche funktionen / befehle brauche ich alle um das obige programm zuerstellen ?</p>
<p>vielen dank an alle<br />
gruss ren22</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2017296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2017296</guid><dc:creator><![CDATA[ren22]]></dc:creator><pubDate>Sun, 06 Feb 2011 12:00:10 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger: Text Datei Modifizieren &#x2F; Lesen &#x2F; Schreiben on Mon, 07 Feb 2011 09:01:00 GMT]]></title><description><![CDATA[<p>ren22 schrieb:</p>
<blockquote>
<p>stimmt es, dass ich zuerst die datei kommplett einlesen dann den string modifiziere und dann die datei zurückschreibe muss ?</p>
</blockquote>
<p>Text anhängen zB. geht auch so, zum sonstigen bearbeiten wirst Du einlesen, modifizieren, neu rausschreiben müssen.</p>
<blockquote>
<p>und welche funktionen / befehle brauche ich alle um das obige programm zuerstellen ?</p>
</blockquote>
<p>Kaum irgendwas, was Du nicht hier drin findest:<br />
<a href="http://www.c-plusplus.net/forum/39469" rel="nofollow">http://www.c-plusplus.net/forum/39469</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2017676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2017676</guid><dc:creator><![CDATA[nman]]></dc:creator><pubDate>Mon, 07 Feb 2011 09:01:00 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger: Text Datei Modifizieren &#x2F; Lesen &#x2F; Schreiben on Mon, 07 Feb 2011 09:01:17 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/u4178" rel="nofollow">nman</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/f5" rel="nofollow">Linux/Unix</a> in das Forum <a href="http://www.c-plusplus.net/forum/f15" rel="nofollow">C++ (auch C++0x)</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2017677</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2017677</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Mon, 07 Feb 2011 09:01:17 GMT</pubDate></item><item><title><![CDATA[Reply to Anfänger: Text Datei Modifizieren &#x2F; Lesen &#x2F; Schreiben on Tue, 08 Feb 2011 22:19:53 GMT]]></title><description><![CDATA[<p>das ist mein erstes wenn man es nennen darf &quot;programm&quot; in c++ <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>bin für verbesserungs vorschläge gerne zu ohr <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<p>ich habe erstmal auf prüfungen verzichtet soweit es geht es soll ja erstmal mal nur einfügen und löschen .. der rest kommt dann später <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
<pre><code class="language-cpp">#include &lt;string&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;stdio.h&gt;

using namespace std;

int main(int argc, char *argv[]) {
//Anzahl der Parameter ausgeben
    const std::string stradd = &quot;add&quot;;
    const std::string strremove = &quot;remove&quot;;
    string s;

    //Jeden einzelnen Übergabeparameter ausgeben
    for (int i=0; i &lt; argc; i++) {
        if (argc&lt;2){
            cout &lt;&lt; &quot;try --help for more info&quot; &lt;&lt; endl;
            return 0;
        }
        //else {
        if (stradd == argv[i]) {
            cout &lt;&lt; &quot;adding values...&quot; &lt;&lt; endl;
            ifstream in(&quot;Neelix_tables.gm&quot;); // Open for reading
            ofstream out(&quot;Neelix_tables2.gm&quot;); // Open for writing
            while(getline(in, s)) // Discards newline char

            if (s.find (&quot;//Admins&quot;) != string::npos){
                out &lt;&lt; &quot;//Admins&quot; &lt;&lt; &quot;\n&quot;;
                out &lt;&lt; &quot;&quot; &lt;&lt; &quot;\n&quot;;
                out &lt;&lt; &quot;{name=\&quot;&quot; &lt;&lt;argv[2]&lt;&lt; &quot;\&quot;,cl_guid=\&quot;&quot; &lt;&lt;argv[3]&lt;&lt; &quot;\&quot;,admin_level=&quot; &lt;&lt;argv[4]&lt;&lt; &quot;,admin_pw=\&quot;&quot; &lt;&lt;argv[5]&lt;&lt; &quot;\&quot;,},&quot; &lt;&lt; &quot;\n&quot;; // ... must add it back
                }
            else{
                    out &lt;&lt; s &lt;&lt; endl; // ... must add it back
                }

        }
        if (strremove == argv[i]) {
            cout &lt;&lt; &quot;adding values...&quot; &lt;&lt; endl;
            ifstream in(&quot;Neelix_tables.gm&quot;); // Open for reading
            ofstream out(&quot;Neelix_tables2.gm&quot;); // Open for writing
            while(getline(in, s)) // Discards newline char

            if (s.find (argv[2]) != string::npos){
                out &lt;&lt; &quot;&quot; ;//&lt;&lt; &quot;\n&quot;;
                //out &lt;&lt; &quot;&quot; &lt;&lt; &quot;\n&quot;;
                //out &lt;&lt; &quot;{name=\&quot;&quot; &lt;&lt;argv[2]&lt;&lt; &quot;\&quot;,cl_guid=\&quot;&quot; &lt;&lt;argv[3]&lt;&lt; &quot;\&quot;,admin_level=&quot; &lt;&lt;argv[4]&lt;&lt; &quot;,admin_pw=\&quot;&quot; &lt;&lt;argv[5]&lt;&lt; &quot;\&quot;,},&quot; &lt;&lt; &quot;\n&quot;; // ... must add it back
                }
            else{
                    out &lt;&lt; s &lt;&lt; endl; // ... must add it back
                }

        }
            //}
        }
        ifstream FileInCopy(&quot;Neelix_tables2.gm&quot;, ios::binary);

        // Zieldatei
        ofstream FileOutCopy(&quot;Neelix_tables.gm&quot;, ios::binary);

        if (FileInCopy)
            FileOutCopy &lt;&lt; FileInCopy.rdbuf();
          if( remove( &quot;Neelix_tables2.gm&quot; ) != 0 )
            perror( &quot;Error deleting file&quot; );
          else
            puts( &quot;File successfully deleted&quot; );
          return 0;

}
</code></pre>
<p>die textdatei sieht so aus:</p>
<pre><code>/*///////////////////////////////////////////////////////////////////////////////////////////////////////
AdminList:
*////////////////////////////////////////////////////////////////////////////////////////////////////////
global AdminList={
//Admins
{name=&quot;Arthur Dent&quot;,cl_guid=&quot;1234abc&quot;,admin_level=3,admin_pw=&quot;&quot;,},

//Friend(s)
{name=&quot;TheGamer&quot;,  cl_guid=&quot;1234abc&quot;,admin_level=1,admin_pw=&quot;&quot;,},
};
</code></pre>
<p>danke für eure hilfe<br />
gruss ren22</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2018520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2018520</guid><dc:creator><![CDATA[ren22]]></dc:creator><pubDate>Tue, 08 Feb 2011 22:19:53 GMT</pubDate></item></channel></rss>