Korrekt.
Folgendes kleines Testprogramm kopiert auch Dateien mit Leerzeichen im Namen
Code:
#include <stdio.h>
int main(int argc, char** args)
{
FILE* infile = 0;
FILE* outfile = 0;
char buffer[10240];
size_t len;
size_t len2;
if (argc != 3)
{
fprintf(stderr, "wrong number of arguments (%d)\n", argc);
return 1;
}
infile = fopen(args[1], "r");
if (infile == NULL)
{
fprintf(stderr, "cannot open source file %s\n", args[1]);
return -1;
}
printf("opening \"%s\" for read\n", args[1]);
outfile = fopen(args[2], "w");
if (outfile == 0)
{
fclose(infile);
fprintf(stderr, "cannot open destination file %s}n", args[2]);
}
printf("opening \"%s\" for write\n", args[2]);
while (!feof(infile))
{
len = fread(buffer, 1, 10240, infile);
printf("read %d bytes\n", len);
if (len > 0)
{
len2 = fwrite(buffer, 1, len, outfile);
printf("wrote %d bytes", len2);
}
}
fclose(infile);
fclose(outfile);
return 0;
}
Wie man leicht sehen kann, ganz normale fXXX Befehle.
Wäre mit open/read/write auch gegangen
Ciao,
_
Lesezeichen