<?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[putc und binärdateien]]></title><description><![CDATA[<p>Hi!<br />
Kann man putc bzw. getc auch bei Binärdateien verwänden? Mein Ziel wäre es, eine Datei stückchenweise auszulesen, zu senden und dann wieder zusammen zu bauen. Also einen Filetransfer über das Internet. Mit putc und getc kann ich stink normale Textdateien wunderschön schicken, doch mit dateien wie .jpg etc. kommt immer nur schwachsinn an. Ich schätze mal es liegt daran, wie ich auslese bzw. schreibe:</p>
<pre><code>//Lese(beim Sender):
			fhandle = fopen(file_transfere[i].filename,&quot;rb&quot;); //öffnet die Datei binär zum Lesen
			if(fhandle == 0) {continue;}

			fseek(fhandle,file_transfere[i].position-1,SEEK_SET); //setzt den Cursor zur letzten gesendeten Stelle
			u = 0;
			do //Lest die Bytes aus der Datei aus
			{
				buffer2[u] = getc(fhandle);
				u++;
			}while(!feof(fhandle) &amp;&amp; u &lt;= transfer_size);
			u--;
			buffer2[u] = 0;
</code></pre>
<pre><code>//Schreiben (beim Empfänger):
			fhandle = fopen(/*file_transfere[i].filename*/&quot;testtarget.txt&quot;,&quot;a+b&quot;); //öffnet die Datei zum anhängen
			if(fhandle == 0) {continue;}

			u = -1;
			do
			{
				u++;
				putc(buffer[u],fhandle);
			}while(u &lt; buffer_length-1);
</code></pre>
<p>Was mache ich falsch?</p>
<p>Danke schon mal für eure Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/230730/putc-und-binärdateien</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 04:01:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/230730.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 31 Dec 2008 15:31:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to putc und binärdateien on Wed, 31 Dec 2008 15:31:07 GMT]]></title><description><![CDATA[<p>Hi!<br />
Kann man putc bzw. getc auch bei Binärdateien verwänden? Mein Ziel wäre es, eine Datei stückchenweise auszulesen, zu senden und dann wieder zusammen zu bauen. Also einen Filetransfer über das Internet. Mit putc und getc kann ich stink normale Textdateien wunderschön schicken, doch mit dateien wie .jpg etc. kommt immer nur schwachsinn an. Ich schätze mal es liegt daran, wie ich auslese bzw. schreibe:</p>
<pre><code>//Lese(beim Sender):
			fhandle = fopen(file_transfere[i].filename,&quot;rb&quot;); //öffnet die Datei binär zum Lesen
			if(fhandle == 0) {continue;}

			fseek(fhandle,file_transfere[i].position-1,SEEK_SET); //setzt den Cursor zur letzten gesendeten Stelle
			u = 0;
			do //Lest die Bytes aus der Datei aus
			{
				buffer2[u] = getc(fhandle);
				u++;
			}while(!feof(fhandle) &amp;&amp; u &lt;= transfer_size);
			u--;
			buffer2[u] = 0;
</code></pre>
<pre><code>//Schreiben (beim Empfänger):
			fhandle = fopen(/*file_transfere[i].filename*/&quot;testtarget.txt&quot;,&quot;a+b&quot;); //öffnet die Datei zum anhängen
			if(fhandle == 0) {continue;}

			u = -1;
			do
			{
				u++;
				putc(buffer[u],fhandle);
			}while(u &lt; buffer_length-1);
</code></pre>
<p>Was mache ich falsch?</p>
<p>Danke schon mal für eure Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1637770</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1637770</guid><dc:creator><![CDATA[C_Cheaf]]></dc:creator><pubDate>Wed, 31 Dec 2008 15:31:07 GMT</pubDate></item><item><title><![CDATA[Reply to putc und binärdateien on Sun, 04 Jan 2009 19:38:44 GMT]]></title><description><![CDATA[<p>getc und putc sollten binär arbeiten</p>
<p>allerdings sehe ich keinen sende-code. die datei wird einfach nur in einen<br />
buufer geschrieben bzw aus einem gelesen. wenn du die datei über das internet<br />
versenden willst, vermute ich dass du mit sockets arbeitest. dann solltest du<br />
nicht die ganze datei mit getc stückchenweise einlesen, sondern entweder<br />
einzelne zeichen senden, oder buffer von ~1kb - 2kb senden. bei tcp kannst<br />
du die ganze datei senden, aber dann lieber mit fread alles auf einmal einlesen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1639471</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1639471</guid><dc:creator><![CDATA[helferlein]]></dc:creator><pubDate>Sun, 04 Jan 2009 19:38:44 GMT</pubDate></item></channel></rss>