<?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[komplette Datei einlesen...]]></title><description><![CDATA[<p>Hi...hab mal wieder ein kleines Problem!</p>
<p>Würde gerne mit hilfe einer kleinen Funktion<br />
die ID3-Tags einer MP3-Datei löschen...</p>
<p>Die ID3v2-Tags stehen am Anfang der Datei,<br />
die ID3v1-Tags am Ende der Datei...</p>
<p>jetzt hab ich mir überlegt ich öffne die Datei(Binär),spring an das Ende des ID3V2-Tag und lese dann ab hier die komplette Datei in ein Array oder in String ein,<br />
schneide dann das ID3V1-Tag ab, und speicher die MP3 Rohdaten dann wieder in<br />
einer Datei...</p>
<p>funktioniert auch einigermaßen aber dauert ewig lange..hab es mit fstream<br />
versucht...</p>
<p>- gibt es eine bessere Methode?<br />
- wie würdet ihr so was lösen?</p>
<pre><code class="language-cpp">void main(){

	char datei[]= &quot;C:\\test.mp3&quot;;

	fstream mp3(datei,ios_base::in|ios_base::binary);

	if(mp3.good()){

		int TagSize = 4192;	//Größe des id3v2 Tag
		char buffer[1];		//Zwischenspeicher
		string AudioSource = &quot;&quot;;	//reine Mp3 datei ohne Tag

		//Größe ermitteln
		mp3.seekg(0,ios::end);
		int AudioSize = mp3.tellg(); // größe ist 3909730 bytes

		//zum Anfang Springen
		mp3.seekg(TagSize,ios::beg);

		//Datei einlesen
		while(!mp3.eof()){
			mp3.read(buffer,1);
			AudioSource += buffer[0];
		}

		mp3.close();

	}
	else{
		cout&lt;&lt;&quot;Fehler beim Datei oeffnen&quot;&lt;&lt;endl;
	}

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/144759/komplette-datei-einlesen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 14:17:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/144759.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 21 Apr 2006 11:25:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to komplette Datei einlesen... on Fri, 21 Apr 2006 11:25:53 GMT]]></title><description><![CDATA[<p>Hi...hab mal wieder ein kleines Problem!</p>
<p>Würde gerne mit hilfe einer kleinen Funktion<br />
die ID3-Tags einer MP3-Datei löschen...</p>
<p>Die ID3v2-Tags stehen am Anfang der Datei,<br />
die ID3v1-Tags am Ende der Datei...</p>
<p>jetzt hab ich mir überlegt ich öffne die Datei(Binär),spring an das Ende des ID3V2-Tag und lese dann ab hier die komplette Datei in ein Array oder in String ein,<br />
schneide dann das ID3V1-Tag ab, und speicher die MP3 Rohdaten dann wieder in<br />
einer Datei...</p>
<p>funktioniert auch einigermaßen aber dauert ewig lange..hab es mit fstream<br />
versucht...</p>
<p>- gibt es eine bessere Methode?<br />
- wie würdet ihr so was lösen?</p>
<pre><code class="language-cpp">void main(){

	char datei[]= &quot;C:\\test.mp3&quot;;

	fstream mp3(datei,ios_base::in|ios_base::binary);

	if(mp3.good()){

		int TagSize = 4192;	//Größe des id3v2 Tag
		char buffer[1];		//Zwischenspeicher
		string AudioSource = &quot;&quot;;	//reine Mp3 datei ohne Tag

		//Größe ermitteln
		mp3.seekg(0,ios::end);
		int AudioSize = mp3.tellg(); // größe ist 3909730 bytes

		//zum Anfang Springen
		mp3.seekg(TagSize,ios::beg);

		//Datei einlesen
		while(!mp3.eof()){
			mp3.read(buffer,1);
			AudioSource += buffer[0];
		}

		mp3.close();

	}
	else{
		cout&lt;&lt;&quot;Fehler beim Datei oeffnen&quot;&lt;&lt;endl;
	}

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1041876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041876</guid><dc:creator><![CDATA[smilingman]]></dc:creator><pubDate>Fri, 21 Apr 2006 11:25:53 GMT</pubDate></item><item><title><![CDATA[Reply to komplette Datei einlesen... on Fri, 21 Apr 2006 11:34:26 GMT]]></title><description><![CDATA[<p>mach den zwischenspeicher 4096 bytes groß. dann geht's blitzschnell.<br />
und das speichern im string ist suboptimal. kannste das vermeiden?</p>
<pre><code class="language-cpp">while(AudioSize&gt;4096){
   mp3.read(buffer,4096);
   ausgabe.write(buffer,4096);
   AudioSize-=4096;
}
if(Audiosize){
   mp3.read(buffer,Audiosize);
   ausgabe.write(buffer,Audiosize);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1041883</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041883</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Fri, 21 Apr 2006 11:34:26 GMT</pubDate></item><item><title><![CDATA[Reply to komplette Datei einlesen... on Fri, 21 Apr 2006 20:25:02 GMT]]></title><description><![CDATA[<p>Vielen Dank für die schnelle Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1042229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1042229</guid><dc:creator><![CDATA[smilingman]]></dc:creator><pubDate>Fri, 21 Apr 2006 20:25:02 GMT</pubDate></item></channel></rss>