<?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[Dateien auslesen und verändern!]]></title><description><![CDATA[<p>Hallo alle zusammen,<br />
ich hab ein problem, und zwar<br />
Ich schreibe mir gerade ein programm, das eine html-seite erstellt wenn man es ausführt, was in der seite drinsteht wird vom benutzer eingegeben, also links usw..<br />
das klappt auch perfekt, der html-quellcode wird ordentlich erstellt und funktioniert.<br />
Nur wollte ich das programm nun um eine Funktion erweitern, und zwar, das man im nachhinein die html datei ändern kann, ich habe dafür vor jedem link einen anker gesetzt. Und nun möchte ich das das programm nach der eingegebenen Link-Nr (also erste link, oder zweite link usw..) danach sucht und man ihn dan ändern kann.<br />
weis einer wie das am besten machen kann? Ich dachte mir vll mit while-schleifen..<br />
falls sich einer das programm anschauen will, hier der download link<br />
<a href="http://rapidshare.com/files/100458960/Startseiten-Creator.rar.html/" rel="nofollow">http://rapidshare.com/files/100458960/Startseiten-Creator.rar.html/</a><br />
Danke schonmal im vorraus!</p>
<p>PS: Das ist mein erstes Projekt und bin noch zimlich unerfahren, habe auch schon nach lösungen über google gesucht.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/208978/dateien-auslesen-und-verändern</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 13:26:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/208978.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 25 Mar 2008 13:37:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Tue, 25 Mar 2008 13:37:11 GMT]]></title><description><![CDATA[<p>Hallo alle zusammen,<br />
ich hab ein problem, und zwar<br />
Ich schreibe mir gerade ein programm, das eine html-seite erstellt wenn man es ausführt, was in der seite drinsteht wird vom benutzer eingegeben, also links usw..<br />
das klappt auch perfekt, der html-quellcode wird ordentlich erstellt und funktioniert.<br />
Nur wollte ich das programm nun um eine Funktion erweitern, und zwar, das man im nachhinein die html datei ändern kann, ich habe dafür vor jedem link einen anker gesetzt. Und nun möchte ich das das programm nach der eingegebenen Link-Nr (also erste link, oder zweite link usw..) danach sucht und man ihn dan ändern kann.<br />
weis einer wie das am besten machen kann? Ich dachte mir vll mit while-schleifen..<br />
falls sich einer das programm anschauen will, hier der download link<br />
<a href="http://rapidshare.com/files/100458960/Startseiten-Creator.rar.html/" rel="nofollow">http://rapidshare.com/files/100458960/Startseiten-Creator.rar.html/</a><br />
Danke schonmal im vorraus!</p>
<p>PS: Das ist mein erstes Projekt und bin noch zimlich unerfahren, habe auch schon nach lösungen über google gesucht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480038</guid><dc:creator><![CDATA[Metaby]]></dc:creator><pubDate>Tue, 25 Mar 2008 13:37:11 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Tue, 25 Mar 2008 14:17:16 GMT]]></title><description><![CDATA[<p>Dateien kann man nicht direkt ändern (d.h. in der Größe verändern) und das willst du ja eventuell.</p>
<p>Also mußt du zuerst die Datei in den Hauptspeicher laden, dann die Veränderungen dran vornehmen und danach die geänderten Daten wieder abspeichern.</p>
<p>Zum Einlesen der Datei empfiehlt sich als Datenstruktur std::vector<a href="std::string" rel="nofollow">std::string</a>:</p>
<pre><code class="language-cpp">#include &lt;vector&gt;
#include &lt;string&gt;
#include &lt;fstream&gt;

std::vector&lt;std::string&gt; vFile;

std::ifstream iff(&quot;datei.html&quot;); // &lt;- wie auch immer deine Datei heißt

std::string str;
while(std::getline(iff, str))
  vFile.push_back(str);
</code></pre>
<p>Nun den Anker drin suchen:</p>
<pre><code class="language-cpp">for(std::size_t i=0; i&lt;vFile.size(); i++)
{
  std::string &amp;str = vFile[i];

  if(str.find(&quot;#anker&quot;) != std::npos) // der Name deines Ankers
  {
    // alte url suchen und durch neue url ersetzen
    std::string old_url(&quot;alter_link&quot;);
    std::string new_url(&quot;neuer_toller_link&quot;);
    std::size_t pos_old_url = str.find(old_url);
    if(pos_old_url != std::npos)
      str.replace(pos_old_url, old_url.size(), new_url);
  }
}
</code></pre>
<p>Und dann zum Schluß die Daten wieder zurückschreiben:</p>
<pre><code class="language-cpp">std::ofstream off(&quot;datei.html&quot;);

for(std::size_t n=0; n&lt;vFile.size(); ++n)
  off &lt;&lt; vFile[n] &lt;&lt; std::endl;
</code></pre>
<p>Dieser Code ist ungetestet...</p>
<p>Falls dich das &quot;std::&quot; stört, kannst du ja selber vorher ein &quot;using namespace std;&quot; vornehmen.</p>
<p>P.S. Die RAR-Datei hat bei mir immer nur 3.98KB (statt angezeigter 6KB) und ich kann sie nicht öffnen... (ich wollte mal schauen, wie dein Kenntnisstand von C++ ist -)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480072</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480072</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Tue, 25 Mar 2008 14:17:16 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Tue, 25 Mar 2008 14:28:14 GMT]]></title><description><![CDATA[<p>Hallo, danke für deine schnelle antwort,<br />
Bei mir funktioniert der link und das .rar archiv ohne probleme.<br />
Ich hätte aber nochmal eine frage, kann ich anstatt den anker gleich mit anzugeben, das über eine variable machen? damit der benutzer sich aussuchen kann welchen anker er anspringen möchte?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480086</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480086</guid><dc:creator><![CDATA[Metaby]]></dc:creator><pubDate>Tue, 25 Mar 2008 14:28:14 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Tue, 25 Mar 2008 15:03:37 GMT]]></title><description><![CDATA[<p>Ja klar.<br />
Definiere einfach einen std::string als Parameter für die Funktion und setzte diesen dann statt des String-Literals (&quot;...&quot;) ein. Daselbe dann natürlich auch für die URLs.</p>
<p>P.S. evtl. liegt es beim RAR-Archiv bei mir auch daran, daß ich nur eine alte WinRAR-Version (3.00) habe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480120</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Tue, 25 Mar 2008 15:03:37 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Tue, 25 Mar 2008 15:08:01 GMT]]></title><description><![CDATA[<p>ah ja, danke^^<br />
das mit dem literalen string usw.. hab ich ejtzt grad net kapiert xD<br />
sry bin noch n zimlicher anfänger^^<br />
du meinst, ich soll in die klammer net (&quot;#anker&quot;) schreiben sondern (string) also ne string variable reinschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480124</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480124</guid><dc:creator><![CDATA[Metaby]]></dc:creator><pubDate>Tue, 25 Mar 2008 15:08:01 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Wed, 26 Mar 2008 12:05:15 GMT]]></title><description><![CDATA[<p>Sry wegen doppelpost, aber ich konnte mein alten beitrag net editieren weil ich kein registrierter benutzer bin, ich hab deine lösung ausprobiert, ein fehler war drin es heist nicht &quot;std::npos&quot; sondern &quot;string::npos&quot;</p>
<p>Aber das ist nicht mein problem, mein problem ist, das ich den Quelltext nur teilweise verstehe, da ich wie gesagt noch ein anfänger in C++ bin, könntest du mir evtl den Quelltext noch näher erläutern? Und mir sagen was für variablen ich evtl noch brauche?</p>
<p>Danke schonmal im vorraus.</p>
<p>MFG Max</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480556</guid><dc:creator><![CDATA[Metaby]]></dc:creator><pubDate>Wed, 26 Mar 2008 12:05:15 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Wed, 26 Mar 2008 20:26:09 GMT]]></title><description><![CDATA[<p>Sorry, für den Fehler, aber ich sagte ja, ich habe den Code aus dem Kopf hingeschrieben.</p>
<p>Eigentlich gibt es nicht viel dazu zu erzählen.<br />
Dies sind eigentlich die Standard-Klassen von C++.<br />
Am besten, du liest dir ein Tutorial zu den Containerklassen (z.B. std::vector, std::list ...) sowie den Streams (std::iostream, std::fstream, ...) durch.</p>
<p>Ich weiß, daß ich dich als Anfänger mit meinem Code überfordert habe, aber nur so lernt man am besten...</p>
<p>Funktioniert denn dein Programm jetzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1480988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1480988</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Wed, 26 Mar 2008 20:26:09 GMT</pubDate></item><item><title><![CDATA[Reply to Dateien auslesen und verändern! on Thu, 27 Mar 2008 11:58:24 GMT]]></title><description><![CDATA[<p>mh.. ok dann werd ich mal nach tutorials suchen, aber trozdem mal 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="🙂"
    /></p>
<p>Ne funktioniert noch nicht, weil ich ja noch nicht richtig weis ich den code einbinden muss mit variablen usw... Aber ich werds hinbekommen <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>
<p>MFG Max</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1481286</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1481286</guid><dc:creator><![CDATA[Metaby]]></dc:creator><pubDate>Thu, 27 Mar 2008 11:58:24 GMT</pubDate></item></channel></rss>