|
|
|
|
Bonjour tout le monde
Voila mon probleme j'arrive a copier un fichier dans un autre mais quand je veux concatener un fichier avec un aute, c'est à dire rajouter en fin de fichier un autre fichier il y a un probleme.
il ne me rajoute pas en fin de fichier il fait simplement une copie pourtant je lui dis de rajouter a la fin.
Je travail avec des fichier vidéo.
Voici le code pour la copie et la concaténation
//copie du fichier source
std::ifstream source( "C:\\..\\video0.avi",std::ios_base::binary );
std::ofstream destination( "C:\\..\\video.avi",std::ios_base::binary );
char buff[4096];
while ( !source.eof() )
{
source.read ( buff, sizeof( buff ) );
destination.write ( buff, source.gcount() );
}
//on rajoute le fichier file a file1
std::ifstream file( "C:\\...\\video1.avi",std::ios_base::binary );
//ouverture avec ajout en fin de fichier
std::ofstream file1( "C:\\..\\video.avi", std::ios_base::binary,std::ios_base::app);
while ( !file.eof() )
{
file.read ( buff, sizeof( buff ) );
file1.write ( buff, file.gcount() );
}
Configuration: Windows XP Internet Explorer 6.0
Sans être méchant, tu est tordu.
|
Ce que je cherche a faire, je te l'explique.
|
Essai ça :
//copie du fichier source
std::ifstream source( "C:\\..\\video0.avi",std::ios_base::binary );
std::ofstream destination( "C:\\..\\video.avi",std::ios_base::binary );
char buff[4096];
while ( !source.eof() )
{
source.read ( buff, sizeof( buff ) );
destination.write ( buff, source.gcount() );
}
//on rajoute le fichier file a file1
std::ifstream file( "C:\\...\\video1.avi",std::ios_base::binary );
while ( !file.eof() )
{
file.read ( buff, sizeof( buff ) );
destination.write ( buff, file.gcount() );
}
Ensuite, ton fichier video.avi contiendra bien les deux autre concaténer, c'est à dire écri à la suite l'un de l'autre. (regarde la taille final) Par contre, si tu souhaite coller deux video ensemble l'une derrière l'autre avec comme but de les lire à la suite en une seul fois par le biai d'un lecteur type winamp : à mon avis ça ne marchera pas. Si c'est ça que tu veu faire, prend un logiciel de montage video, tu t'enmerdera moins, et ça prendra moins de temps. Salutation ! Quand on sait pas, on touche pas !JBT Char Snipeur |
La commande cat sous linux pourra t'aider, en tout cas en mpeg, ça fonctionne.
|