<?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[Zeilenumbruch verschwindet bei einlesen mit fstream]]></title><description><![CDATA[<p>Hallo Allerseits,</p>
<p>ich hab eben ein kleines Programm geschrieben, das via Drag &amp; Drop eine *.cvs bekommt und die &quot;;&quot; durch &quot;|&quot; ersetzen soll (Damit es wo anders importiert werden kann. )<br />
Hier der Code:</p>
<pre><code>#include &lt;stdio.h&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string.h&gt;

using namespace std;

int main(int argc, char **argv)
{
	string outputfilename =  &quot;output_for_Wiki.txt&quot;;

	char *isochar = new char[outputfilename.size()+1];
	isochar[outputfilename.size()] = 0;
	memcpy(isochar, outputfilename.c_str(), outputfilename.size());

	cout &lt;&lt; &quot;converting &quot; &lt;&lt; argv[1] &lt;&lt; &quot; ...&quot; &lt;&lt; endl;

	ifstream isin;
	isin.open(argv[1], ios::in);	

	ofstream isout;
	isout.open(isochar, ios::out);

	if(isin.good())
	{
		while (!isin.eof())
		{

			char curchar;
			isin &gt;&gt; curchar;

			if (curchar == ';')
				curchar = '|';

			isout &lt;&lt; curchar;

		}
	}
	else
		cout &lt;&lt; &quot;corrupted inputfile&quot;;

	isin.close();
	isout.close();

	cout &lt;&lt; &quot;done&quot; &lt;&lt; endl;

	return 0;
}
</code></pre>
<p>Leider berücksichtigt er nicht bei fstream die Zeilenenden, da das die neue Datei nur aus einer Zeile besteht.</p>
<p>Darum bitte ich um Hilfe, wie ich dieses Problem beheben kann.</p>
<p>Danke im Voraus.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/317568/zeilenumbruch-verschwindet-bei-einlesen-mit-fstream</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Jul 2026 19:29:18 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/317568.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 13 Jun 2013 11:19:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeilenumbruch verschwindet bei einlesen mit fstream on Thu, 13 Jun 2013 11:19:47 GMT]]></title><description><![CDATA[<p>Hallo Allerseits,</p>
<p>ich hab eben ein kleines Programm geschrieben, das via Drag &amp; Drop eine *.cvs bekommt und die &quot;;&quot; durch &quot;|&quot; ersetzen soll (Damit es wo anders importiert werden kann. )<br />
Hier der Code:</p>
<pre><code>#include &lt;stdio.h&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string.h&gt;

using namespace std;

int main(int argc, char **argv)
{
	string outputfilename =  &quot;output_for_Wiki.txt&quot;;

	char *isochar = new char[outputfilename.size()+1];
	isochar[outputfilename.size()] = 0;
	memcpy(isochar, outputfilename.c_str(), outputfilename.size());

	cout &lt;&lt; &quot;converting &quot; &lt;&lt; argv[1] &lt;&lt; &quot; ...&quot; &lt;&lt; endl;

	ifstream isin;
	isin.open(argv[1], ios::in);	

	ofstream isout;
	isout.open(isochar, ios::out);

	if(isin.good())
	{
		while (!isin.eof())
		{

			char curchar;
			isin &gt;&gt; curchar;

			if (curchar == ';')
				curchar = '|';

			isout &lt;&lt; curchar;

		}
	}
	else
		cout &lt;&lt; &quot;corrupted inputfile&quot;;

	isin.close();
	isout.close();

	cout &lt;&lt; &quot;done&quot; &lt;&lt; endl;

	return 0;
}
</code></pre>
<p>Leider berücksichtigt er nicht bei fstream die Zeilenenden, da das die neue Datei nur aus einer Zeile besteht.</p>
<p>Darum bitte ich um Hilfe, wie ich dieses Problem beheben kann.</p>
<p>Danke im Voraus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2330755</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2330755</guid><dc:creator><![CDATA[hero66]]></dc:creator><pubDate>Thu, 13 Jun 2013 11:19:47 GMT</pubDate></item><item><title><![CDATA[Reply to Zeilenumbruch verschwindet bei einlesen mit fstream on Thu, 13 Jun 2013 11:36:48 GMT]]></title><description><![CDATA[<p>Warum nicht <a href="http://en.wikipedia.org/wiki/Sed" rel="nofollow">sed</a> nehmen?</p>
<p>Zum Programm: Da sind mehrere Fehler und Designschwächen drin.<br />
1. Einlesen: Du ignorierst whitespace. Du möchtest wohl eine unformatierte Lesefunktion benutzen, nicht den Operator&gt;&gt;. Je nach Art der Datei möchtest du vielleicht sogar im binary-Modus arbeiten. Kommt auf die Daten an.<br />
2. Logikfehler: Wie in jedem schlechten Lehrbuch machst du Prüfen, Lesen, Verarbieten, obwohl Lesen, Prüfen, Verarbeiten richtig wäre. Wo immer du das mit <code>while(!eof)...</code> her hast: Wegschmeißen und schnellstens vergessen. Vernünftiges Buch holen. Siehe meine Signatur.<br />
3. Zeilen 12-14 <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /><br />
4. Sachen wie falsche und fehlende Header spreche ich gar nicht mehr im Details an. Alles voller Fehler. Womit hast du C++ gelernt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2330759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2330759</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 13 Jun 2013 11:36:48 GMT</pubDate></item><item><title><![CDATA[Reply to Zeilenumbruch verschwindet bei einlesen mit fstream on Thu, 13 Jun 2013 11:48:23 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;iterator&gt;
#include &lt;algorithm&gt;
int main() 
{ 
  std::transform(std::istreambuf_iterator&lt;char&gt;(std::cin),
                 std::istreambuf_iterator&lt;char&gt;(),
                 std::ostreambuf_iterator&lt;char&gt;(std::cout),
                 [](char c){return c==';' ? '|' : c;});
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2330764</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2330764</guid><dc:creator><![CDATA[eskalation]]></dc:creator><pubDate>Thu, 13 Jun 2013 11:48:23 GMT</pubDate></item><item><title><![CDATA[Reply to Zeilenumbruch verschwindet bei einlesen mit fstream on Thu, 13 Jun 2013 11:51:50 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Warum nicht <a href="http://en.wikipedia.org/wiki/Sed" rel="nofollow">sed</a> nehmen?</p>
</blockquote>
<p>Weil dafür <a href="http://man.cx/tr" rel="nofollow">man: tr</a> gedacht ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2330765</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2330765</guid><dc:creator><![CDATA[eskalation]]></dc:creator><pubDate>Thu, 13 Jun 2013 11:51:50 GMT</pubDate></item><item><title><![CDATA[Reply to Zeilenumbruch verschwindet bei einlesen mit fstream on Thu, 13 Jun 2013 12:29:11 GMT]]></title><description><![CDATA[<pre><code>std::transform(std::istreambuf_iterator&lt;char&gt;(std::cin), 
                 std::istreambuf_iterator&lt;char&gt;(), 
                 std::ostreambuf_iterator&lt;char&gt;(std::cout), 
                 [](char c){return c==';' ? '|' : c;});
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /></p>
<pre><code>std::replace_copy(std::istreambuf_iterator&lt;char&gt;(std::cin), 
                  std::istreambuf_iterator&lt;char&gt;(), 
                  std::ostreambuf_iterator&lt;char&gt;(std::cout), 
                  ';', '|');
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2330776</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2330776</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 13 Jun 2013 12:29:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zeilenumbruch verschwindet bei einlesen mit fstream on Thu, 13 Jun 2013 12:46:03 GMT]]></title><description><![CDATA[<p>eskalation schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p>Warum nicht <a href="http://en.wikipedia.org/wiki/Sed" rel="nofollow">sed</a> nehmen?</p>
</blockquote>
<p>Weil dafür <a href="http://man.cx/tr" rel="nofollow">man: tr</a> gedacht ist.</p>
</blockquote>
<p>Ahh, cool <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> . Da lag bei mir wohl ein Problem des goldenen Hammers vor. (Beim TE übrigens auch, aber mit C++ statt sed, was hier noch ungünstiger ist)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2330780</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2330780</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 13 Jun 2013 12:46:03 GMT</pubDate></item></channel></rss>