<?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[Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy?]]></title><description><![CDATA[<p>Hallo Community,</p>
<p>ich brauche wirklich eure Hilfe. Ich bin total verzweifelt.:-(</p>
<p>Das Programm soll die erste Zeile der per Parameter übergebenen Datei auslesen und diese Datei mit neuem Namen speichern.<br />
Der neue Name, soll die zuvor ausgelesene Zeile sein.<br />
**<br />
Mein Problem:**</p>
<p>1. Mein Programm liest zwar die erste Zeile schreibt aber keine neue Datei, da in der ersten Zeile Leerzeichen vorkommen.</p>
<p>2. Wenn ich die Leerzeichen aus der Ursprungsdatei entferne, schreibt er eine neue Datei allerdings ohne Dateiendung .txt und ohne Inhalt der Ursprungsdatei, sie ist also leer.</p>
<p>Ich würde wirklich gerne wissen, was ich falsch gemacht habe. Ich komme seit Stunden nicht weiter...</p>
<p>Bitte bitte helft mir. Danke</p>
<pre><code class="language-cpp">int main(int argc, char *argv[])
{
    ifstream f;  // Datei-Handle
      string s;

    f.open(argv[1]); // Öffne Datei aus Parameter

    if(getline(f,s)) //Erste Zeile der MIBFEHL Dateien auslesen
    {
       cout &lt;&lt; s &lt;&lt; endl;
       ofstream o(s.c_str());
       while(f.getline(f,s))
          o &lt;&lt; s &lt;&lt; flush;
    }
    else
       cout &lt;&lt; &quot;Fehler aufgetreten&quot; &lt;&lt; endl;
    return 0; 

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/187654/zeile-mit-leerzeichen-und-gleichzeitigen-rename-oder-copy</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 00:15:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/187654.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 22 Jul 2007 16:27:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Sun, 22 Jul 2007 16:28:12 GMT]]></title><description><![CDATA[<p>Hallo Community,</p>
<p>ich brauche wirklich eure Hilfe. Ich bin total verzweifelt.:-(</p>
<p>Das Programm soll die erste Zeile der per Parameter übergebenen Datei auslesen und diese Datei mit neuem Namen speichern.<br />
Der neue Name, soll die zuvor ausgelesene Zeile sein.<br />
**<br />
Mein Problem:**</p>
<p>1. Mein Programm liest zwar die erste Zeile schreibt aber keine neue Datei, da in der ersten Zeile Leerzeichen vorkommen.</p>
<p>2. Wenn ich die Leerzeichen aus der Ursprungsdatei entferne, schreibt er eine neue Datei allerdings ohne Dateiendung .txt und ohne Inhalt der Ursprungsdatei, sie ist also leer.</p>
<p>Ich würde wirklich gerne wissen, was ich falsch gemacht habe. Ich komme seit Stunden nicht weiter...</p>
<p>Bitte bitte helft mir. Danke</p>
<pre><code class="language-cpp">int main(int argc, char *argv[])
{
    ifstream f;  // Datei-Handle
      string s;

    f.open(argv[1]); // Öffne Datei aus Parameter

    if(getline(f,s)) //Erste Zeile der MIBFEHL Dateien auslesen
    {
       cout &lt;&lt; s &lt;&lt; endl;
       ofstream o(s.c_str());
       while(f.getline(f,s))
          o &lt;&lt; s &lt;&lt; flush;
    }
    else
       cout &lt;&lt; &quot;Fehler aufgetreten&quot; &lt;&lt; endl;
    return 0; 

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1330298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1330298</guid><dc:creator><![CDATA[padthink]]></dc:creator><pubDate>Sun, 22 Jul 2007 16:28:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Sun, 22 Jul 2007 17:54:05 GMT]]></title><description><![CDATA[<p>hmm ...</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;

int main(int argc, char *argv[])
{
    if (argc &lt; 2 || argc &gt; 2)
    {
        std::cerr &lt;&lt; &quot;Usage: &quot; &lt;&lt; argv[0] &lt;&lt; &quot; srcfile&quot; &lt;&lt; std::endl;
        return 0;
    }
    std::ifstream file_in(argv[1])
    if (!file_in)
    {
        std::cerr &lt;&lt; &quot;Could not open file \&quot;&quot; &lt;&lt; argv[1] &lt;&lt; &quot;\&quot;!&quot; &lt;&lt; std::endl;
        return 1;
    }
    std::string new_file;
    std::getline(file_in, new_file);
    std::ofstream file_out(new_file.c_str());
    file_in.seekg(0, std::ios::beg);
    file_out &lt;&lt; file_in.rdbuf();
    std::clog &lt;&lt; &quot;File \&quot;&quot; &lt;&lt; new_file &lt;&lt; &quot;\&quot; created!&quot; &lt;&lt; std::endl;
}
</code></pre>
<p>...</p>
<p><strong>edit</strong><br />
nen &quot; vergessen <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/1330338</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1330338</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 22 Jul 2007 17:54:05 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Sun, 22 Jul 2007 18:36:17 GMT]]></title><description><![CDATA[<p>Danke funktioniert soweit.</p>
<p>Jedoch werden bei deinem Programm, die Leerzeichen nicht im Dateinamen mit reingeschrieben. Ich habe versucht bei</p>
<pre><code class="language-cpp">std::getline(file_in, new_file);
</code></pre>
<p>ein '\n' einzufügen, hat leider nichts gebracht.</p>
<p>Die Erste Zeile sieht so aus(ohne Zeilenumbruch):<br />
FIRMA : 01 RMW FEHLERPROTOKOLL AUTOMATISCHE BUCHUNG DTA MIETER DATUM : 23.10.03</p>
<p>und hat 130 Zeichen inkl. Leerzeichen. Bitte hilf mir nochmal, danke. Gruß, padthink</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1330357</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1330357</guid><dc:creator><![CDATA[padthink:padthink]]></dc:creator><pubDate>Sun, 22 Jul 2007 18:36:17 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Mon, 23 Jul 2007 07:45:31 GMT]]></title><description><![CDATA[<p>padthink:padthink schrieb:</p>
<blockquote>
<p>Die Erste Zeile sieht so aus(ohne Zeilenumbruch):<br />
FIRMA : 01 RMW FEHLERPROTOKOLL AUTOMATISCHE BUCHUNG DTA MIETER DATUM : 23.10.03</p>
</blockquote>
<p>Und das soll einen gültigen Dateinamen ergeben? Zumindest bei den Doppelpunkten dürfte Windows sich querstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1330571</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1330571</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 23 Jul 2007 07:45:31 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Mon, 23 Jul 2007 17:14:05 GMT]]></title><description><![CDATA[<p>ist mir vorher dann aufgefallen, danke !! ;-).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331014</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331014</guid><dc:creator><![CDATA[pathink]]></dc:creator><pubDate>Mon, 23 Jul 2007 17:14:05 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Wed, 25 Jul 2007 12:47:13 GMT]]></title><description><![CDATA[<p>Hallo habe ein ähnliches Problem</p>
<pre><code class="language-cpp">int main(int argc, char *argv[])
{
        while (in.good())
    {
          ofstream out(argv[1].bak); //hier soll ein Bakup enstehen von der alten datei die nachher überschrieben wird
          do
          {
          getline(in,buffer,'\n');
          out&lt;&lt;buffer&lt;&lt;endl;

          if( myZeile.isZuAendern() &amp;&amp; !myZeile.functionIsFinished()) 
          {
              myZeile.appendZeile(buffer);                  
          }
          else
          {
              vec.push_back( myZeile );
              myZeile.setZeile( buffer );
          }
          myZeile.setdelSpace();
          }
          while (in.good());
          out.close();

    }

}
</code></pre>
<p>Bekomme es nicht hin das .bak anzuhängen, hab das array schon in einem String gespeichert plus das bak doch leider nimmet er es oben in der funktion nicht mehr an.<br />
Danke im voraus</p>
<p>Gruß Thomas</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332278</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332278</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Wed, 25 Jul 2007 12:47:13 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Wed, 25 Jul 2007 13:04:43 GMT]]></title><description><![CDATA[<p>'argv[1].bak' ist ja auch Käse - du solltest den Dateinamen lieber per String-Konkatenation zusammensetzen:</p>
<pre><code class="language-cpp">string filename = argv[1];
filename += &quot;.bak&quot;;
ofstream out(filename.c_str());
</code></pre>
<p>(wenn du sehr verzweifelt bist, kannst du auch strcat() verwenden)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332286</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332286</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 25 Jul 2007 13:04:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 05:35:25 GMT]]></title><description><![CDATA[<p>Danke für deine Antwort,<br />
hab jetzt nur noch das problem das ich argv[1] überprüfen will das es nicht leer ist weil so gibt es immer wieder fehler.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332672</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 05:35:25 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 06:06:33 GMT]]></title><description><![CDATA[<p>Und was ist so schwer daran, argv[1] zu überprüfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332680</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332680</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 26 Jul 2007 06:06:33 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 06:20:28 GMT]]></title><description><![CDATA[<p>Irgendwie steh ich wohl auf dem Schlauch,<br />
hab verschiedene möglichkeiten schon getestet</p>
<pre><code class="language-cpp">if(argc &lt;= 1)
if(argv[1]==&quot;&quot;)
if(argv[1]=='')
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1332689</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332689</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 06:20:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 06:23:10 GMT]]></title><description><![CDATA[<p>Auf ihnhalt überprüfen geht</p>
<pre><code class="language-cpp">if(temp==&quot;Hilfe&quot;||temp==&quot;hilfe&quot;)
    {
       system(&quot;cls&quot;);
       cout&lt;&lt;&quot;******************** Hilfe ********************&quot;&lt;&lt;endl&lt;&lt;endl;
       return(0);
    }
</code></pre>
<p>aber ich will überprüfen ob er leer ist weil sonst stürzt das programm ab wenn ich keinen Parameter übergebe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332690</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332690</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 06:23:10 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 06:33:43 GMT]]></title><description><![CDATA[<p>Die Überprüfung von argc sollte eigentlich funktionieren, um die &quot;kein Parameter angegeben&quot; abzufangen. Alternativ kannst du auch argv[1] mit dem NULL-Zeiger vergleichen oder strcmp() darauf loslaufen lassen (solange du noch nackte char* in der Hand hältst, taugt der Vergleichsoperator nicht wirklich).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332701</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 26 Jul 2007 06:33:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 06:45:52 GMT]]></title><description><![CDATA[<p>das hab ich auch schon probiert</p>
<pre><code class="language-cpp">if(argv[1]==NULL)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1332709</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332709</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 06:45:52 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 07:23:55 GMT]]></title><description><![CDATA[<p>Hab jetzt folgenden Code</p>
<pre><code class="language-cpp">if(strcmp(argv[1],argv[2])==0)
    {
       cout&lt;&lt;&quot;Bitte dateinamen bei Aufruf des Programms eingeben&quot;&lt;&lt;endl;
       cout&lt;&lt;&quot;Fuer Hilfe bitte Programm mit Parameter \&quot;Hilfe\&quot; aufrufen&quot;&lt;&lt;endl;
       return(0);
    }
</code></pre>
<p>müsste ja stimmen weil wenn kein Parameter übergeben wird kann auch der andere parameter nicht vorhanden sein.</p>
<p>doch leider stellt mein programm immer wieder einen fehler fest und muss beendet werden<br />
wenn ich parameter übergebe funktioniert das prog.<br />
hab das Programm mal mit .....exe test test gestartet und es geht in die if schleife rein</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332735</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332735</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 07:23:55 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 07:30:27 GMT]]></title><description><![CDATA[<p>Wenn du keine Parameter angegeben hast, ist argv[0] der Programmname<sup>*</sup>, argv[1]==NULL und weitere Elemente nicht definiert (also Datenmüll). Für die Abfrage, ob überhaupt Parameter übergeben wurden, solltest du besser argc auswerten (das liefert die Anzahl der angegebenen Parameter inklusive des Programmnamens).</p>
<p><sup>*</sup> Ehe ich hier den ANSI Standar an den Kopf geworfen bekomme: Genau genommen ist nicht festgelegt, was in argv[0] stehen soll - aber in der Regel ist's der Programmname.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332742</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332742</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 26 Jul 2007 07:30:27 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 07:37:11 GMT]]></title><description><![CDATA[<p>ja es ist der Programmname.<br />
wenn ich es über argc&lt;=1 macht er auch nicht<br />
wenn ich strcmp(argv[1],argv[2])==0) anwende und nur einen parameter eingebe stürzt das prog ab</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332745</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332745</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 07:37:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 07:39:04 GMT]]></title><description><![CDATA[<p>Tomas schrieb:</p>
<blockquote>
<p>wenn ich es über argc&lt;=1 macht er auch nicht</p>
</blockquote>
<p>Was heißt hier &quot;macht er nicht&quot;? Zeig doch mal etwas Code.</p>
<p>(und eventuell solltest du dir mal ausgeben lassen, was tatsächlich in argc drinsteht)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332747</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332747</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 26 Jul 2007 07:39:04 GMT</pubDate></item><item><title><![CDATA[Reply to Zeile mit Leerzeichen und gleichzeitigen Rename oder Copy? on Thu, 26 Jul 2007 08:01:55 GMT]]></title><description><![CDATA[<p>Hallo<br />
hab den Fehler endeckt.<br />
ich weiße bevor ich die überprüfung von argv[1] mach weiße argv[1] einem String zu und deswegen gab es probleme.<br />
Danke für deine Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332757</guid><dc:creator><![CDATA[Tomas]]></dc:creator><pubDate>Thu, 26 Jul 2007 08:01:55 GMT</pubDate></item></channel></rss>