Zipper un ou plusieurs fichiers d'un répertoire (vc++)

Contenu du snippet

Gère les fichiers *.* / fichier.* / *.type
Utilise Winzip
Chemins des fichiers a donner façon DOS (ex: c:\Progra~1\fichier.*)

Source / Exemple :


#include <iostream.h>
#include <atlbase.h>
#include <conio.h>

char str[250], cpiece[100], piece[100];
int longueur, i=0;

void main()
{
cout<<"entrer le chemin de la piece a zipper\n";
cin>>cpiece;

strcpy(piece, cpiece);

longueur = strlen(piece);
longueur--;

for(i=0;i<3;i++)
{
	if(piece[longueur]!='*')
	{
		switch(i)
		{
		case 0 :
			piece[longueur]='p';
			longueur--;
			break;
		case 1 :
			piece[longueur]='i';
			longueur--;
			break;
		case 2 :
			piece[longueur]='z';
			break;			
		default :
			cout<<"ca marche pas";
			break;
		}
	}
	
	if(piece[longueur]=='*' && i==0)
	{
		piece[longueur]='z';
		longueur++;
		piece[longueur]='i';
		longueur++;
		piece[longueur]='p';
		i=3;
	}
}

longueur = strlen(piece);

while(piece[longueur]!='.')
longueur--;

longueur--;
if(piece[longueur]=='*')
{
	piece[longueur]=NULL;
	longueur--;
	piece[longueur]='.';
	longueur++;
	piece[longueur]='z';
	longueur++;
	piece[longueur]='i';
	longueur++;
	piece[longueur]='p';
	longueur++;
	piece[longueur]=NULL;
	longueur++;
	piece[longueur]=NULL;

}

strcpy(str,"c:\\progra~1\\winzip\\winzip32 -a "); // répertoire de winzip
strcat(str, piece); // destination
strcat(str, " ");
strcat(str, cpiece); // fichier source
system(str); // lancement de la compression

}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.