Вот написал фунцию которая собирает из отдельных файлов один большой.
Проблена в том, что если я удаляю отдельные файлы после копирования, то результирующий файл становиться нулевой длинны. Иде косяк?
char filename[1024*128];
int i = 0;
int blocks_nunber = m_file_size/DEFAULT_DL_SEGMENT;
if(m_file_size%DEFAULT_DL_SEGMENT)
blocks_nunber++;
snprintf(filename, sizeof(filename), "%s/%s", m_store_dir.c_str(), m_fn.c_str());
FILE* pTF = fopen(filename, "w+");
if(pTF == 0)
{
printf("cant open target file for assembling%s\n", filename);
perror("Error");
return;
}
while(i < blocks_nunber)
{
snprintf(filename, sizeof(filename), "%s/%s_dltmp/%s_%lu", m_tempdir.c_str(), m_fn.c_str(), m_fn.c_str(), i);
FILE* pF = fopen(filename, "r");
if(pF == 0)
{
printf("cant open temp file for assembling%s\n", filename);
perror("Error");
fclose(pTF);
return;
}
int n = 0;
while(n = fread(filename, 1, sizeof(filename), pF))
{
fwrite(filename, 1, n, pTF);
}
fclose(pF);
//snprintf(filename, sizeof(filename), "%s/%s_dltmp/%s_%lu", m_tempdir.c_str(), m_fn.c_str(), m_fn.c_str(), i);
//unlink(filename);
//printf("removing temp file: %s\n", filename);
i++;
}
fclose(pTF);
i = 0;
/*while(i < blocks_nunber)
{
snprintf(filename, sizeof(filename), "%s/%s_dltmp/%s_%lu", m_tempdir.c_str(), m_fn.c_str(), m_fn.c_str(), i);
unlink(filename);
printf("removing temp file: %s\n", filename);
i++;
}
snprintf(filename, sizeof(filename), "%s/%s_dltmp", m_tempdir.c_str(), m_fn.c_str());
rmdir(filename);*/
/**********************************************************/
Ответ на:
комментарий
от imp
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Некопирование файлов (2009)
- Форум Recv снова в ожидании,в то время как Send уже все передал. (2015)
- Форум перехват open (2016)
- Форум Фейлится fseek(file, 0, SEEK_END) (2016)
- Форум Да помогите вы мне с этим wav-player'oм!!! (2003)
- Форум Утилита для изменения аптайма (2008)
- Форум Си /*ошибка сегментирования */ (2009)
- Форум В чём ошибка? (2014)
- Форум Как считать из файла набор строк с числами для сортировки этих строк по столбцу? (2019)
- Форум Парсинг 3ds файла -> добраться бы до OBJ_TRIMESH (0x4100) (2013)