Hallo, ich moechte euch meinen Dateigenerator vorstellen. Ich habe ihn in C geschrieben zu Uebungszwecken. Dieser ist in der Lage Dateien in jeder beliebigen Groesse zu generieren.
Beschreibung:
Es ist ein Dateigenerator, der einem User ermoeglicht Dateien in beliebiger Groesse zu erzeugen.
Hinweise zur Benutzung:
Zuerst wird der User nach einem Dateinamen ( file name) gefragt. Der Name ist dabei frei waehlbar und darf max. 100 Zeichen + 3 Zeichen fuer eine moegliche Endung enthalten. Gueltige Namen waehren: "dummy.txt", "file.dat", "file". Eine Kontrolle der Sonderzeichen, die nicht in Namen verwendet werden duerfen besteht leider noch nicht. Anschliessend wird in einem Menue der User nach der Formatierungseingabe gefragt, d.h. in welcher Groesse er die Datei eingeben moechte.
Ich finde es zwar gut, dass du dich fürs programmieren interessierst, aber ich kann leider keinen Nutzen in diesem Programm sehen.
Wenn du hier Programme postest (von dir selbst geschrieben oder nicht), dann sollten sie auch einen gewissen Zweck erfüllen. Wenn sie es nicht tun, dann behalte sie lieber in einer dunklen Ecke deiner Festplatte
(ist nur gut gemeinte Kritik)
Es gibt heute noch immer Hoster, die Punkte fuer Downloads vergeben ab einer bestimmten Groesse. Deswegen fuellen viele Leute mit irgendwelchen Bilder oder Songs auf. Das Programm emoeglicht es dabei die fehlenden Bytes aufzufuellen. In einem Archiv kann das nutzen unter der Vorraussetzung, dass man natuerlich speichert und nicht komprimiert. Ware auch Unsinn wenn die Datei gross genug ist. Habt ihr vlt. nun eine Vorstellung von dem Tool?
Wenn ihr auch gerade nichts zu tun habt, koennt ihr mir was vorschlagen. Beispielsweise einen Filter bauen oder aehnl.
Ein Nachteil, der sich ohne viel Muehe ausbessern laesst.
Zitat:
hat keine GUI
Es muss doch nicht jeglicher Schrott in Vista / W7 Style rauskommen
Nein, zum Thema GUI bin ich einfach noch nicht gekommen. Aber ich denke, dass bei so einem einfachen Generator kein richtiges Interface benoetigt wird. Trotzdem ist deine Kritik fuer das naechste Mal im Hinterkopf
Source:
Code:
#include <stdio.h>
#include <stdlib.h>
#define GB 1073741824
#define MB 1048576
#define KB 1024
void create_file(char *name, unsigned int size);
int main (void) {
unsigned int filesize;
char filename[103];
int wahl = -1;
printf("Exercise program created by skriiva\n\n");
printf("Questions or advices to skriiva@gmail.com\n\n");
printf("File generator\n");
printf("Create files in each size\n");
printf("\n\nFile name: ");
scanf("%103s", &filename);
while(1) {
printf("\n\nInput format\n\n");
printf("1 - Input in GB\n");
printf("2 - Input in MB\n");
printf("3 - Input in KB\n");
printf("4 - Input in B\n\n\n");
printf("5 - Cancel\n\n");
printf("Choose: ");
scanf("%d", &wahl);
if(wahl == 5) {
printf("\n\nProgress cancelled!\n\n");
break;
return EXIT_FAILURE;
}
else {
if((wahl > 0)&&(wahl < 6)) {
printf("\n\nFile size: ");
scanf("%ld", &filesize);
if ( wahl == 1)
create_file(filename, filesize * GB);
if ( wahl == 2)
create_file(filename, filesize * MB);
if ( wahl == 3)
create_file(filename, filesize * KB);
if ( wahl == 4)
create_file(filename, filesize);
break;
}
else {
continue;
}
}
}
return EXIT_SUCCESS;
};
void create_file(char *name, unsigned int size) {
FILE *create = fopen(name, "wb");
if (NULL == create) {
fprintf(stderr, "Error: Could not create file ( Maybe lack of rights )\n");
exit(EXIT_FAILURE);
}
fseek(create, size-1, SEEK_SET);
putc('x', create);
printf("Datei erstellt!");
fclose(create);
};
warum liest du die nötigen parameter nicht per argv ein?
Ich mag es wenn man was auswaehlen kann. Außerdem haben viele nicht das nötige know how zu batch.
Gut nun kann auch noch kommen, wenn argc nicht größer 1 ist soll er das Menü anzeigen. Aber da ich muss ich viel mehr Analyse machen wegen den Dateigrößen
ick gloob, das ist geil für nen virus
komplette platte befüllen XD
__________________
Ich lese mir die [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] durch, bevor ich eine Sig erstelle!
I read the [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] before I create a signature.