30/09/2018, 16:57
File f báo NULL nhưng có trong đường dẫn
Mình có viết hàm join file trong C , nhưng không biết sao file f nó cứ báo NULL hoài, mọi người xem xong giúp mình với.
void joinfile(char *nfn)
{
long int size_per_pack;
char fn[250]="";
char fncopy[250] = "";
memcpy(fncopy, nfn, strlen(nfn));
int numoffile = numsofpack(fncopy);
memcpy(fn, fncopy, seconddot(fncopy));
FILE *fjoin = fopen(fn, "wb");
if (fjoin == NULL)
{
printf("couldn't open file");
exit(0);
}
FILE *f;
int fullsizejoin = fullssizejoin(fncopy);
char *s1 = new char[fullsizejoin];
for (int j = 1; j <= numoffile; j++)
{
f = fopen(fncopy, "rb");
if (f == NULL)
{
printf("couldn't open file");
exit(0);
}
int eachsize = file_size(nfn);
fread(s1, 1, eachsize , f);
fwrite(s1, 1, eachsize, fjoin);
char sa[250] = "";
char sb[250] = "";
memcpy(sa, nfn, seconddot(nfn) + 1);
_strrev(nfn);
memcpy(sb, nfn, strlen(nfn) - seconddot(nfn) - 1);
int k = atoi(sb);
k++;
_itoa(k, sb, 10);
strcat(sa, sb);
memcpy(nfn, sa, strlen(sa));
_fcloseall();
}
delete[]s1;
_fcloseall();
}
Bài liên quan
printf
cáifncopy
ra xem thử có được không?Nó vẫn ổn anh ơi, vẫn in ra, vẫn có
Phát in ra được cái gì nhỉ? Ok, như thế này đi, bỏ cái file cần đọc vào chung thư mục với file build ra, tức file exe. Thư mục đó rất có thể là thư mục debug bên trong project của mình.
Khi mở file thì chỉ cần viết tên file thôi, không cần viết đường dẫn nó cũng chạy bởi vì file thực thi của mình, file exe, và file input thuộc về cùng một thư mục cha.