複数のファイル名を同じディレクトリに保存したい。ただし、配列の最後のファイルのみを保存しているようです。ここに私のコードがあります:
hFind = FindFirstFile("*.bin", &FindFileData);
if(hFind == INVALID_HANDLE_VALUE) {
printf("Not founded");
}
else {
printf("Found: %s", FindFileData.cFileName);
}
if(hFind != INVALID_HANDLE_VALUE) {
do
{
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
printf("\nFound: %s\n", FindFileData.cFileName);
}
else
{
filesize.LowPart = FindFileData.nFileSizeLow;
filesize.HighPart = FindFileData.nFileSizeHigh;
count++;
filesize.QuadPart += filesize.QuadPart;
printf("%s %ld bytes", FindFileData.cFileName, filesize.QuadPart);
printf("count number:%s\n", FindFileData.cFileName);
files[count] = FindFileData.cFileName;
printf("\nfiles array:%s", files[count]);
}
}
while (FindNextFile(hFind, &FindFileData) != 0);
//when I'm printing the file[3], it is showing the last file
printf("file in 3:%s", files[3]);
したがって、問題は、配列全体が最後のファイルだけでいっぱいになることです。次のファイルに移動するたびに、配列全体が最後のファイルに置き換えられます。それがwin32の問題なのか他の何かなのかわかりません。あなたの洞察が必要です。前もって感謝します!