Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int main(int argc,char *argv[])
- {
- FILE *source;
- FILE *locked;
- int x;
- int zwspeicher;
- char string[64]="";
- switch(argc)
- {
- case 1:
- do
- {
- printf("Original file: ");
- gets(string);
- source=fopen(string,"rb");
- } while(source==NULL);
- printf("Do you want a named outputfile(y/n) ");
- switch(getchar())
- {
- case 'Y':
- case 'y':
- printf("\nFilename: ");
- gets(string);
- locked=fopen(string,"w+b");
- break;
- default:
- sprintf(string,"%s.lck",argv[1]);
- locked=fopen(string,"w+b");
- break;
- }
- break;
- case 2:
- source=fopen(argv[1],"rb");
- if(source==NULL)
- {
- printf("File does not exist!\n");
- return -1;
- }
- else
- {
- for(x=0;x<60 && argv[1][x]!='.';x++)
- {
- string[x]=argv[1][x];
- }
- sprintf(string+x,".lck");
- locked=fopen(string,"w+b");
- }
- break;
- case 3:
- source=fopen(argv[1],"rb");
- if(source==NULL)
- {
- printf("File does not exist!\n");
- return -1;
- }
- else
- {
- locked=fopen(argv[2],"w+b");
- if(locked==NULL)
- {
- printf("File does not exist!\n");
- return -1;
- }
- }
- break;
- default:
- printf("Error\n");
- return -1;
- break;
- }
- fseek(source,-1L,SEEK_END);
- while(fread(string,1,1,source) && ftell(source)>1)
- {
- for(x=1,string[0]=(char)~string[0],zwspeicher=0;x<=128;x*=2)
- {
- zwspeicher+=(string[0]/x%2)*x;
- }
- sprintf(string,"%c",zwspeicher);
- fwrite(string,1,1,locked);
- fseek(source,-2L,SEEK_CUR);
- }
- string[0]=(char)~string[0];
- fwrite(string,1,1,locked);
- fclose(source);
- fclose(locked);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement